Mac OS X 简单的方法知道何时来电了
最近本猫所在的小区时常停电,往往半夜或是凌晨才来电啊!早上起来本猫在想如何知道确切的来电时间,但又不费事的方法呢。
方法一是用手机录音器录音,因为来电后门禁会发出“滴”的一声,所以只要知道开始录音的时间就可以知道来电的时间了!
方法二是停电就会停水,找一个容器放在打开得水龙头下面,保持超小的出水口,然后第二天看容量就可以知道来电的时间。不过这种方法略微脑残点。
方法三是直接打电话问门卫大叔,因为他们24小时不睡觉啊。或者打电话问供电局说:请相信本猫有一个很重要的原因,请告诉我昨晚来电的时间吧!
方法四是如果笔记本电池还够的话,写代码来获得准确的时间吧!本猫查了一下如何在OS X系统下获取AC状态,就是电源适配器的状态。如果是Conneted则表示有市电否则表示电池在供电。度娘搜索一下,很简单的方法:
system_profiler SPSoftwareDataType SPHardwareDataType SPPowerDataType | grep -E "Serial Number \(system\)|Computer Name|Cycle Count|Charge Remaining|Charge Capacity"
返回如下:
Computer Name: kissAir
Serial Number (system): XXXXXXXXXXXXXX :)
Charge Remaining (mAh): 4296
Full Charge Capacity (mAh): 4340
Cycle Count: 67
虽然有电池的信息,不过没有AC的信息,自己稍微修改了一下,删除那些不用的输出:
system_profiler SPPowerDataType
返回:
Power:
Battery Information:
Model Information:
Serial Number: XXXXXXXXXXXXXXX :)
Manufacturer: DP
Device Name: bq20z451
Pack Lot Code: 0
PCB Lot Code: 0
Firmware Version: 406
Hardware Revision: 1
Cell Revision: 173
Charge Information:
Charge Remaining (mAh): 4321
Fully Charged: No
Charging: No
Full Charge Capacity (mAh): 4321
Health Information:
Cycle Count: 67
Condition: Normal
Battery Installed: Yes
Amperage (mA): -9
Voltage (mV): 8268
System Power Settings:
AC Power:
System Sleep Timer (Minutes): 60
Disk Sleep Timer (Minutes): 10
Display Sleep Timer (Minutes): 10
Wake on AC Change: No
Wake on Clamshell Open: Yes
Wake on LAN: Yes
AutoPowerOff Delay: 14400
AutoPowerOff Enabled: 1
DarkWakeBackgroundTasks: 1
Display Sleep Uses Dim: Yes
PrioritizeNetworkReachabilityOverSleep: 0
Standby Delay: 4200
Standby Enabled: 1
Battery Power:
System Sleep Timer (Minutes): 10
Disk Sleep Timer (Minutes): 10
Display Sleep Timer (Minutes): 2
Wake on AC Change: No
Wake on Clamshell Open: Yes
AutoPowerOff Delay: 14400
AutoPowerOff Enabled: 1
Current Power Source: Yes
DarkWakeBackgroundTasks: 0
Display Sleep Uses Dim: Yes
Reduce Brightness: Yes
Standby Delay: 4200
Standby Enabled: 1
Hardware Configuration:
UPS Installed: No
AC Charger Information:
Connected: No
Charging: No
注意最后几行,那个就是AC的连接状态啊!不过还要进一步精简命令:
apple@kissAir: ~$system_profiler SPPowerDataType|grep Connected:
Connected: Yes
apple@kissAir: ~$system_profiler SPPowerDataType|grep Connected:
Connected: No
这次可以了,接下来就很简单了,用代码搞定吧:
#!/usr/bin/ruby while true ret = `system_profiler SPPowerDataType|grep Connected:` if ret =~ /Yes/ #表示有电源接入 puts "power come when #{Time.now}";break end;sleep 1 end
各位童鞋脑洞打开,帮我想想其他好方法吧!
Mac OS X 简单的方法知道何时来电了的更多相关文章
- Mac OS OpenVpN 连接设置(转)
下文介绍Mac OS连接使用OpenVPN方法教程,使用的软件是免费开源的Tunnelblick,当然也有其它连接软件,比如Viscosity,不过这个是付费的,还是前面的用的多. 1.下载安装Tun ...
- Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验
Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...
- Virtualbox 上调整 Mac OS 分辨率 最简单方法
Mac OS 分辨率:VBoxManage setextradata "Mac OS X 10.10" VBoxInternal2/EfiGopMode 3 ----代 ...
- Mac OS 文件、文件夹重命名的方法
在Mac OS中,文件和文件名重命名的方法非常简单 选中你想要命名的文件或者文件夹,按回车,可以直接重命名,输入你要修改的内容,确认后,再按回车就OK啦--- 希望能对你有所帮助^_^
- 苹果Mac OS X显示隐藏文件的方法
苹果Mac OS X显示隐藏文件的方法有很多种,这里介绍一种最简单的, 方法/步骤 打开“终端”,根据自己的版本选择命令 早期的OS X(10.6~10.8)系统可以使用如下两条命令来开始 ...
- Mac OS环境下媒体文件分割工具mediafilesegmenter的简单使用(生成M3U8 TS文件)
mediafilesegmenter是苹果开发的一款用于分割媒体文件的工具,其功能与mediastreamsegmenter相似,但操作更简单. * 具体可以对比博客中的另一篇简介<Mac OS ...
- 教你Mac OS系统四种改动Hosts文件的方法
使用Mac OS X系统的用户.在某些时候可能遇到了须要改动系统Hosts文件的情况,那么Mac OS系统怎样改动Hosts文件呢?和Windows系统有何差别呢?我们知道事实上改动Hosts文件仅仅 ...
- 在 Mac OS X Lion 下修改 Hosts 的四种方法
一名刚刚使用 Mac OS X Lion 系统的朋友问我怎么该系统下修改 Hosts 文件,说网上搜了很多办法都不管用,只要编辑 Hosts 文件就出现”你不是文件 hosts 的所有者,因此没有权限 ...
- MAC OS U 盘制作与安装方法
伴随着 iMac 5K Retina 和新的 Mac mini 等硬件的发布,苹果终于都推出了 OS X Yosemite 系统正式版了!相信很多人都已经用上.不过对于一些不想升级,而是打算「全新安装 ...
随机推荐
- 剑指Offer--图的操作
剑指Offer–图的操作 前言 企业笔试过程中会涉及到数据结构的方方面面,现将有关图的深度优先搜索与广度优先搜索进行整理归纳,方便日后查阅. 在已做过的笔试题目中,可用DFS解决的题目有: & ...
- 关于React Native项目在android上UI性能调试实践
我们尽最大的努力来争取使UI组件的性能如丝般顺滑,但有的时候这根本不可能做到.要知道,Android有超过一万种不同型号的手机,而在框架底层进行软件渲染的时候是统一处理的,这意味着你没办法像iOS那样 ...
- antlr v4 使用指南连载4——词法规则入门之黄金定律
词法规则入门 黄金定律一二 若输入串能被多个词法规则匹配,那么声明在词法文件最前面的规则生效. parser parser grammar HelloParser; options { languag ...
- 简单RPC之Socket实现
最近看到Dubbo大神写得使用Socket实现的简单的RPC调用,对RPC的理解更简单了,然后根据大神的代码自己也重构了一下. RPC Server端代码,主要是使用ServerSocket获得rpc ...
- 一个简单的安卓+Servlet图片上传例子
例子比较 简单,服务端为Java Web Servlet,doPost方法中接收图片并保存,然后将保存的图片名返回给客户端,关键代码: @SuppressWarnings("deprecat ...
- 关于"net::ERR_CONNECTION_ABORTED"和"Firebug 达到了 Post 请求大小限制"的问题
1.其中"net::ERR_CONNECTION_ABORTED"是在Chrome的控制台中打印出来的. 2."Firebug 达到了 Post 请求大小限制" ...
- J2EE学习从菜鸟变大鸟之七 Servlet
Servlet现在自己的理解是一个控制器,简单的可以理解为不同的JSP页面由用户发送过来的请求可以由Servlet控制器来控制其向下调用的方向(结合三层好理解),但它比较特殊,因为它通常会从外界接收数 ...
- 发布一个参考ssdb,用go实现的类似redis的高性能nosql:ledisdb
起因 ledisdb是一个参考ssdb,采用go实现,底层基于leveldb,类似redis的高性能nosql数据库,提供了kv,list,hash以及zset数据结构的支持. 我们现在的应用极大的依 ...
- 解读“Deep Neural Decision Forests” 2015 Winner of the David Marr Prize
2015ICCV会议最佳论文奖,即有着"计算机视觉界最高奖"之称的马尔奖(Marr Prize)授予了由微软剑桥研究院(Microsoft Research, Cambridge ...
- HMM:隐马尔科夫模型-维特比算法
http://blog.csdn.net/pipisorry/article/details/50731584 目标-解决HMM的基本问题之二:给定观察序列O=O1,O2,-OT以及模型λ,如何选择一 ...