整理一些东西的时候,突然看到终端命令时不时的的会被用到,整理了一些常用的,供大家分享使用
这里有一堆的 Mac OS X 下的终端命令,我将这些命令进行了简单的分类,这里很多命令在其他系统(Windows、Linux)一样有效,特别是 Linux/Unix。希望这些命令对你有帮助。
重启 Mac OS X:
shutdown - r now
关闭 Mac OS X:
shutdown now
获取当前电源管理设置的信息
pmset -g
设置显示器无活动15分钟后关闭
sudo pmset displaysleep 15
让计算机在无活动30分钟后休眠
sudo pmset sleep 30
禁用仪表盘(别忘了将仪表盘 Dock 图标拖动出来)
defaults write com.apple.dashboard mcx-disabled -boolean YES killall Dock
启用仪表盘
defaults write com.apple.dashboard mcx-disabled -boolean NO killall Dock
强制 Finder 程序显示隐藏文件
defaults write com.apple.finder AppleShowAllFiles TRUE
强制 Finder 程序不显示隐藏文件
defaults write com.apple.finder AppleShowAllFiles FALSE
ping 某个主机
ping -o oschina.net
使用 traceroute 诊断到某个主机的路由节点
traceroute oschina.net
检查某个主机是否运行 HTTP 服务,或者检查某网站是否可用
curl -I www.oschina.net | head -n 1
管理 Windows 网络(相当于 Windows 下的 NET 命令),该命令有很多选项,运行下面命令来查看这些选项
man net
使用 dig 来诊断域名信息
dig www.oschina.net A dig www.oschina.net MX
查看谁正在登录到你的 Mac 机器
w
显示系统路由表
netstat -r
显示活动网络连接
netstat -an
显示网络统计
netstat -s
列表所有打开的文件
lsof
重启 Bonjour – 当网络中没有 Mac 时很有用
sudo launchctl unload /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist sudo launchctl load /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
弹出 CD (注意不一定是 disk1)
diskutil eject disk1
经常你需要从剪切板或者文件中获取某些文本,并对这些文本进行转换和使用,这里列举的命令都是跟文本处理相关的
统计剪贴板中文本的行数
pbpaste | wc -l
统计剪贴板中文本的单词数
pbpaste | wc -w
对剪贴板中的文本行进行排序后重新写回剪贴板
pbpaste | sort | pbcopy
对剪贴板中的文本行进行倒序后放回剪贴板
pbpaste | rev | pbcopy
移除剪贴板中重复的文本行,然后写回剪贴板
pbpaste | sort | uniq | pbcopy
找出剪贴板中文本中存在的重复行,并复制后写回剪贴板(包含重复行的一行)
pbpaste | sort | uniq -d | pbcopy
找出剪贴板中文本中存在的重复行,并复制后写回剪贴板(不包含重复行)
pbpaste | sort | uniq -u | pbcopy
对剪贴板中的 HTML 文本进行清理后写回剪贴板
pbpaste | tidy | pbcopy
显示剪贴板中文本的前 5 行
pbpaste | head -n 5
显示剪贴板中文本的最后 5 行
pbpaste | tail -n 5
将剪贴板中文本里存在的 Tab 跳格符号转成空格
pbpaste | expand | pbcopy
htpasswd -nb username password
AuthType Basic AuthName "restricted area" AuthUserFile /path/to/your/site/.htpasswd require valid-user
显示终端窗口中之前输入的命令
history
将文件转成 HTML,支持格式包括 Text, .RTF, .DOC.
textutil -convert html file.extension
Nano 是一个很简单易用的文本编辑器,可用于快速更改文本文件,比 vim 功能弱很多,但很方便
nano [file_to_edit]
在 nano 编辑器中,可使用 ctrl+o 来保持,ctrl+x 来退出。
清理终端显示的内容
clear
更改 iTunes 链接行为为本机 iTunes 库,而不是 iTunes Store
defaults write com.apple.iTunes invertStoreLinks -bool YES
更改 iTunes 链接行为为 iTunes Store,而不是本机 iTunes 库
defaults write com.apple.iTunes invertStoreLinks -bool NO
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 来从文件中获取数据
cat [/path/to/filename]
要将结果放到桌面的一个文件,可将 pbcopy 替换为:
> ~/Desktop/filename.txt
获得权限
为了防止误操作破坏系统,再用户状态下时没有权限操作系统重要文件的,所以先要取得root权限:“sudo -s”
然后输入密码,输入密码时没有任何回显,连星号都没有,只管输完回车就行了.
以下是一些常用命令
换行命令 ----- 空格+\ 清除命令 ----- clear
清理系统 -----使用以下命令:sudo periodic daily然后回车,输入管理员密码即可。如果把daily换成weekly,则运行的是每周的清理。换成monthly,就是做每月的清理。如果直接输入:sudo periodic daily weekly monthly 然后回车。就等于把三个清除一起做了
显示隐藏文件
在“终端”中输入下面的命令:
defaults write com.apple.finder AppleShowAllFiles -bool true
恢复隐藏文件
在“终端”中输入下面的命令:
defaults write com.apple.finder AppleShowAllFiles -bool false
列出文件 ---- ls
例: 想看看跟目录下有什么,
ls /
想看看驱动目录下有什么,
ls /System/Library/Extensions
参数 -w 显示中文,-l 详细信息, -a 包括隐藏文件
转换目录 ---- cd
例:想查看驱动目录下的文件
cd /System/Library/Extensions
建立新目录 ---- mkdir
例:在驱动目录下建一个备份目录 backup
mkdir /System/Library/Extensions/backup
在桌面上建一个备份目录 backup
mkdir /User/用户名/Desktop/backup
拷贝文件 ---- cp
例:想把桌面的Natit.kext 拷贝到驱动目录中
cp -R /User/用户名/Desktop/Natit.kext /System/Library/Extensions
参数R表示对目录进行递归操作,kext在图形界面下看起来是个文件,实际上是个文件夹。
把驱动目录下的所有文件备份到桌面backup
cp -R /System/Library/Extensions/* /User/用户名/Desktop/backup
移动文件 ---- mv
例:想把AppleHDA.Kext 移到桌面
mv /System/Library/Extensions/AppleHDA.kext /User/用户名/Desktop
想把AppleHDA.Kext 移到备份目录中
mv /System/Library/Extensions/AppleHDA.kext /System/Library/Extensions/backup
删除文件 ---- rm
例:想删除驱动的缓存
rm -rf /System/Library/Extensions.kextcache
rm -rf /System/Library/Extensions.mkext
参数-rf 表示递归和强制,千万要小心使用,如果执行了 "rm -rf /" 你的系统就全没了
更改文件权限 ---- chmod
例:把驱动目录下所有文件设定到root读写,其他用户只读
chmod -R 755 /System/Library/Extensions
参数R 表示递归,755表示各用户的权限
脚本文件名 ---- sh
例:修改驱动后所有需要的操作存成一个脚本,以后修改了驱动后只要运行一次这个脚本就可以了.
1. 终端中运行nano /clean
2. 把下列代码粘贴到 nano 中
rm -rf /System/Library/Extensions.kextcache
rm -rf /System/Library/Extensions.mkext
chown -R root:wheel /System/Library/Extensions
chmod -R 755 /System/Library/Extensions
diskutil repairpermissions /
kextcache -k /System/Library/Extensions/
3. Ctrl +O 存盘,Ctrl+X 退出
4. 以后只要动了驱动,就在终端中运行一次 sh /clean