40 个很有用的 Mac OS X Shell 脚本和终端命令

这里有一堆的 Mac OS X 下的终端命令,我将这些命令进行了简单的分类,这里很多命令在其他系统(Windows、Linux)一样有效,特别是 Linux/Unix。希望这些命令对你有帮助。

系统

重启 Mac OS X:

 
<font face="Courier New">1</font><font face="Courier New">shutdown</font> <font face="Courier New">- r now</font>

关闭 Mac OS X:

 
<font face="Courier New">1</font><font face="Courier New">shutdown</font> <font face="Courier New">now</font>

电源管理/省电

获取当前电源管理设置的信息

 
<font face="Courier New">1</font><font face="Courier New">pmset -g</font>

设置显示器无活动15分钟后关闭

 
<font face="Courier New">1</font><font face="Courier New">sudo</font> <font face="Courier New">pmset displaysleep 15</font>

让计算机在无活动30分钟后休眠

 
<font face="Courier New">1</font><font face="Courier New">sudo</font> pmset sleep <font face="Courier New">30</font>

OS X 外观

禁用仪表盘(别忘了将仪表盘 Dock 图标拖动出来)

 
<font face="Courier New">1</font><font face="Courier New">defaults write com.apple.dashboard mcx-disabled -boolean YES </font>
<font face="Courier New">2</font><font face="Courier New">killall Dock</font>

启用仪表盘

 
<font face="Courier New">1</font><font face="Courier New">defaults write com.apple.dashboard mcx-disabled -boolean NO </font>
<font face="Courier New">2</font><font face="Courier New">killall Dock</font>

强制 Finder 程序显示隐藏文件

 
<font face="Courier New">1</font><font face="Courier New">defaults write com.apple.finder AppleShowAllFiles TRUE</font>

强制 Finder 程序不显示隐藏文件

 
<font face="Courier New">1</font><font face="Courier New">defaults write com.apple.finder AppleShowAllFiles FALSE</font>

网络

ping 某个主机

 
<font face="Courier New">1</font><font face="Courier New">ping</font> <font face="Courier New">-o linuxidc.net</font>

使用 traceroute 诊断到某个主机的路由节点

 
<font face="Courier New">1</font><font face="Courier New">traceroute</font> <font face="Courier New">linuxidc.net</font>

检查某个主机是否运行 HTTP 服务,或者检查某网站是否可用

 
<font face="Courier New">1</font>curl -I www.linuxidc.net | head <font face="Courier New">-n 1</font>

管理 Windows 网络(相当于 Windows 下的 NET 命令),该命令有很多选项,运行下面命令来查看这些选项

 
<font face="Courier New">1</font><font face="Courier New">man</font> <font face="Courier New">net</font>

使用 dig 来诊断域名信息

 
<font face="Courier New">1</font><font face="Courier New">dig</font> <font face="Courier New">www.linuxidc.net A </font>
<font face="Courier New">2</font><font face="Courier New">dig</font> <font face="Courier New">www.linuxidc.net MX</font>

查看谁正在登录到你的 Mac 机器

 
<font face="Courier New">1</font><font face="Courier New">w</font>

显示系统路由表

 
<font face="Courier New">1</font><font face="Courier New">netstat</font> <font face="Courier New">-r</font>

显示活动网络连接

 
<font face="Courier New">1</font><font face="Courier New">netstat</font> <font face="Courier New">-an</font>

显示网络统计

 
<font face="Courier New">1</font><font face="Courier New">netstat</font> <font face="Courier New">-s</font>

故障诊断

列表所有打开的文件

 
<font face="Courier New">1</font><font face="Courier New">lsof</font>

重启 Bonjour – 当网络中没有 Mac 时很有用

 
<font face="Courier New">1</font><font face="Courier New">sudo</font> <font face="Courier New">launchctl unload /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist </font>
<font face="Courier New">2</font><font face="Courier New">sudo</font> <font face="Courier New">launchctl load /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist</font>

弹出 CD (注意不一定是 disk1)

 
<font face="Courier New">1</font>diskutil eject <font face="Courier New">disk1</font>

文本操作命令

经常你需要从剪切板或者文件中获取某些文本,并对这些文本进行转换和使用,这里列举的命令都是跟文本处理相关的

统计剪贴板中文本的行数

 
<font face="Courier New">1</font>pbpaste | wc <font face="Courier New">-l</font>

统计剪贴板中文本的单词数

 
<font face="Courier New">1</font>pbpaste | wc <font face="Courier New">-w</font>

对剪贴板中的文本行进行排序后重新写回剪贴板

 
<font face="Courier New">1</font>pbpaste | sort <font face="Courier New">| pbcopy</font>

对剪贴板中的文本行进行倒序后放回剪贴板

 
<font face="Courier New">1</font><font face="Courier New">pbpaste | rev | pbcopy</font>

移除剪贴板中重复的文本行,然后写回剪贴板

 
<font face="Courier New">1</font>pbpaste | sort | uniq <font face="Courier New">| pbcopy</font>

找出剪贴板中文本中存在的重复行,并复制后写回剪贴板(包含重复行的一行)

 
<font face="Courier New">1</font>pbpaste | sort | uniq <font face="Courier New">-d | pbcopy</font>

找出剪贴板中文本中存在的重复行,并复制后写回剪贴板(不包含重复行)

 
<font face="Courier New">1</font>pbpaste | sort | uniq <font face="Courier New">-u | pbcopy</font>

对剪贴板中的 HTML 文本进行清理后写回剪贴板

 
<font face="Courier New">1</font><font face="Courier New">pbpaste | tidy | pbcopy</font>

显示剪贴板中文本的前 5 行

 
<font face="Courier New">1</font>pbpaste | head <font face="Courier New">-n 5</font>

显示剪贴板中文本的最后 5 行

 
<font face="Courier New">1</font>pbpaste | tail <font face="Courier New">-n 5</font>

将剪贴板中文本里存在的 Tab 跳格符号转成空格

 
<font face="Courier New">1</font>pbpaste | expand <font face="Courier New">| pbcopy</font>

其他有用的命令

A:

 
<font face="Courier New">1</font><font face="Courier New">htpasswd -nb username password</font>

B:

 
<font face="Courier New">1</font><font face="Courier New">AuthType Basic </font>
<font face="Courier New">2</font>AuthName "restricted area"
<font face="Courier New">3</font><font face="Courier New">AuthUserFile /path/to/your/site/.htpasswd </font>
<font face="Courier New">4</font><font face="Courier New">require valid-user</font>

显示终端窗口中之前输入的命令

 
<font face="Courier New">1</font><font face="Courier New">history</font>

将文件转成 HTML,支持格式包括 Text, .RTF, .DOC.

 
<font face="Courier New">1</font>textutil -convert html file.extension

Nano 是一个很简单易用的文本编辑器,可用于快速更改文本文件,比 vim 功能弱很多,但很方便

 
<font face="Courier New">1</font><font face="Courier New">nano [file_to_edit]</font>

在 nano 编辑器中,可使用 ctrl+o 来保持,ctrl+x 来退出。

清理终端显示的内容

 
<font face="Courier New">1</font><font face="Courier New">clear</font>

iTunes 相关

更改 iTunes 链接行为为本机 iTunes 库,而不是 iTunes Store

 
<font face="Courier New">1</font><font face="Courier New">defaults write com.apple.iTunes invertStoreLinks -bool YES</font>

更改 iTunes 链接行为为 iTunes Store,而不是本机 iTunes 库

 
<font face="Courier New">1</font><font face="Courier New">defaults write com.apple.iTunes invertStoreLinks -bool NO</font>

其他 Mac OS X 终端资源

Mac OS X Hacking Tools (old but detailed list for the obsessive only).

Cameron Hayne’s Bash Scripts

Mac OS X Hints

Apple Forums

注意: 前面的很多例子我们用了 pbpaste 来从剪贴板中获取数据,也可使用 cat 来从文件中获取数据

 
<font face="Courier New">1</font><font face="Courier New">cat</font> <font face="Courier New">[/path/to/filename]</font>

要将结果放到桌面的一个文件,可将 pbcopy 替换为:

 
<font face="Courier New">1</font><font face="Courier New">> ~/Desktop/filename.txt</font>

英文原文OSCHINA原创翻译

相关推荐