Knock knock…

Notification

正准备跑一个时间可能很长的命令,然后切换到了其他 tab 或者 app 里去了,我想知道这个命令什么时候完成了才方便我再执行其他操作。

直接调用 macOS 内置的 say 通过语音的方式告诉结果:

# Notify me via TTS when the command is finished. function @() { $@ [[ $? -eq 0 ]]
  

Sir, you should wake up lightly.

Alarm

前段时间在公司的时候午休时间我一般会小憩一会儿,但是很容易睡过头了,睡久了下午反而更没精神了,所以我需要这样一个办公室闹钟:不会打扰其他人,只会叫醒我自己,更不要瞎吵吵一下子把我吓醒的。

通常很多音频播放类 app 都会有延时停止的功能,但是延时播放的倒计时闹钟好像并不多,于是索性自己写一个。

# Play music after specified duration as an alarm. alarm: #!/usr/bin/env bash set -euo pipefail echo -n "How soon should I wake you up? >
  

Goodbye, EI Capitan.

意外

找电工过来排查一个电暖灯的问题,中途给我整了两次连续停电,人走了后发现电脑怎么都开不了机。🙃🙃🙃

启动进度条只要走到中途一半就不走了,然后自动关机。重启进入 Recovery 模式,尝试硬盘修复,修复失败(没留存具体错误信息)。重启进入安全模式,磁盘只能挂载(mount)到只读模式,看不出来具体问题,fsck 也修复失败。

6年了,这个 OS X EI Capitan 终归是这么意外地走了,准备重装系统。

备份数据

重启到安全模式,尝试挂载我的一块西数移动硬盘,结果怎么都不成功,不知道原因。重启到 Recovery 模式,在 Disk Utility 里面也挂载不了。一时间也没什么好办法,只好通过网络走 rsync 备份了。在安全模式下是无法连接网络的,但是可以直接读源系统分区的内容。在 Recovery 模式下可以联网但是原系统分区没有自动挂载上,只好手动挂载了,主要通过 diskutil 实现:

diskutil list diskutil info /dev/diskXsY diskutil mount /dev/diskXsY