macOS 命令行下的一些好用的命令(第二期)

继续接上文。

say

say 将文本转化为语音,让机器说话。

它使用了 macOS 中的 VoiceOver 文字语音转换系统。

无需任何选项,say命令会将你输入的任何文本内容转化为语音输出:

say "hello world"

你可以使用带 -f 标识的 say 命令来朗读一个文本文档中的内容,同时使用 -o 标识来保存输出的音频内容:

say -f mynovel.txt -o myaudiobook.aiff

say 命令可以用于脚本的控制台日志和报警声音。

例如,你可以设置批处理或者 Hazel 脚本处理文件,在处理完成后使用say命令发出提醒。

在中文世界,比较注明的一个梗是 “绳命,是剁么的回晃”,复制以下文本到命令行中执行就明白了:

say "绳命,是剁么的回晃;绳命,是入刺的井猜。壤窝们,巩痛嘱咐碰优。田下冯广宰鹅妹,鹅妹冯广宰呲处。壤窝们,嘱咐这缩优类缩优。开心类一小,火大类一小,壤绳命,梗楤容,壤绳命,梗秤巩,壤绳命,梗回晃。"

当然,效果最好的还属 Google 翻译默认的女声,复制以下文件到谷歌翻译,然后点击阅读。

绳命,是剁么的回晃;绳命,是入刺的井猜。壤窝们,巩痛嘱咐碰优。田下冯广宰鹅妹,鹅妹冯广宰呲处。壤窝们,嘱咐这缩优类缩优。开心类一小,火大类一小,壤绳命,梗楤容,壤绳命,梗秤巩,壤绳命,梗回晃。

launchctl

通过运行launchctl list会列出所有当前状态下加载了的启动脚本。sudo launchctl unload [path/to/script] 命令会停止并且卸载运行中的脚本,该命令增加 -w 标识时会将该脚本永久的从你的启动队列中清除。我喜欢用这个命令来终止运行所有类似于Adobe程序及微软Office的自动更新“助手”。

启动脚本储存在以下几个位置中:

~/Library/LaunchAgents    
/Library/LaunchAgents          
/Library/LaunchDaemons
/System/Library/LaunchAgents
/System/Library/LaunchDaemons

对于想要了解启动进程与启动代理的详细机制,推荐你去浏览 Paul Annesley 的博客,该博客将从文件格式带你了解该内容。同时如果你想要学习如何编写你自己的启动脚本,Apple在他们开发者网站上提供了许多很有帮助的文档供参考。如果你希望完全避免命令行的操作,同样有一个非常棒的叫 Lingon 的程序可以帮助你。

diskutil

diskutil 是 macOS 中磁盘管理工具的命令 行界面。它可以完成任何它的图形界面兄弟能完成的任务,同时它也包含一些额外的能力—例如在一个磁盘中写满零或者随机数据。

简单的输入 diskutil list 会列出所有磁盘的路径名和链接到你电脑上的可移除的媒体介质,然后再指向你想要操作的卷的命令。

请注意:如果不正确的使用 diskutil 命令会 永久的清楚磁盘上的数据。

所以一定要记住,先备份,后操作。