Mac OS 常用命令行工具
使用 MacOS 已经有1年的时间,积累了一些常用技巧,其中大部分是命令行。在这里记录一下我使用的命令和一些命令行工具,主要是怕忘了。
命令行工具
autojump
autojump
是一款非常方便的命令行下的目录跳转工具,它能帮你快速从目录访问的历史记录中统计出各个目录的访问频次和权重,这样,就能方便的让你在各个目录中迅速跳转了。
只要你记得之前某个访问过的目录的大概名字,配合autojump,就能快速的跳转过去,再也不用打一长串的 cd 命令了。使用方式如下:
# Mac OS下安装autojump
brew install autojump
the fuck
thefuck
是一个非常有趣的命令行软件,它能自动帮你纠正敲错的命令。平时在快速输入命令的时候,难免会有一些字母输入错误,这个时候,不用担心,直接再输入一个 fuck
,吐槽一下,thefuck 就能自动根据你的输入,猜测出你要输入的命令,并自动帮你纠正,方便得一bi:
# Mac OS下安装the fuck
brew install thefuck
tig
Git
已经成为我们平时经常用到的版本控制管理工具。通常,我们用 git log
命令来查看git提交的历史记录。如果你已经厌倦了 git log
那种千篇一律的界面,那么 tig
绝对是一个不可错过的命令行下查看git历史提交记录的工具:
# Mac OS下安装tig
brew install tig
git summary
平时我们在多人合作开发一个项目的时候,想要大致了解一下每个人对这个项目提交的commit数量和大致的贡献度,那么 git summary
这个命令绝对能满足你的要求:git summary
通过对项目中每一个commit的统计,能大致计算出每个contributor
的提交次数和贡献百分比。让你对这个项目的贡献度能一目了然。
默认git是不会带有这个命令的,需要在Mac OS下额外安装一个扩展包:
brew install git-extras
sl
sl
是一个搞怪的程序,平时我们在输入命令 ls
的时候,经常手误会输入成为 sl。而 sl 这个搞怪的程序,就会在你手误输入错误的时候,让一辆火车满屏疾驰而过…… 是的,它啥也不干,就是让一辆火车从你的屏幕疾驰而过…… 这种逼格满满的骚操作,一定会让你的同事都过来围观……
# Mac OS下安装sl
brew install sl
skm
SKM
,全称SSH Key Manager,是一个在命令行下帮助你方便的管理和切换多个SSH key
的工具。想象一下,如果你是运维人员,不同的服务器也许有不同的SSH Key
来登录,又或者你是一个开发人员,有自己的SSH Key,用来开发和提交代码到自己的git仓库,或许还有公司的SSH Key,用来开发公司的项目。基于以上的情况,需要经常切换SSH Key。而用上了SKM,就方便多了,使用方法类似于 nvm,方便的创建,管理,切换系统当前默认SSH Key,用起来简直不要太爽!
# Mac OS下安装skm
brew tap timothyye/tap
brew install timothyye/tap/skm
ydict
ydict
是一个用来在命令行方式下使用的有道词典,能在命令行下快速的帮你查询单词,不用打开浏览器,输入网址等一系列繁琐的操作。输入命令即可快速搞定!
# Mac OS下安装ydict
brew tap timothyye/tap
brew install timothyye/tap/ydict
er
er
也是一个命令行工具,用来在命令行下查询和换算货币汇率,看一下使用方式,就知道如何使用了:
# Mac OS下安装er
brew tap timothyye/tap
brew install timothyye/tap/exchangerate
常用命令行
重建缓存
Mac OS重新建立缓存
sudo rm /System/Library/PrelinkedKernels/prelinkedkernel
sudo rm /System/Library/Caches/com.apple.kext.caches/Startup/kernelcache
sudo chmod -R 755 /System/Library/Extensions
sudo chmod -R 755 /Library/Extensions
sudo chown -R root:wheel /System/Library/Extensions
sudo chown -R root:wheel /Library/Extensions
sudo touch /System/Library/Extensions
sudo touch /Library/Extensions
sudo kextcache -q -update-volume /
sudo kextcache -system-caches
sudo kextcache -i /
代理终端
让终端使用代理
# 终端走socks5代理
export http_proxy="socks5://127.0.0.1:1080"
export https_proxy="socks5://127.0.0.1:1080"
# 或者写成这样
export ALL_PROXY=socks5://127.0.0.1:1080
# 终端走http代理
export http_proxy=http://127.0.0.1:1089
export https_proxy=http://127.0.0.1:1089
# 关闭终端代理
unset ALL_PROXY
# curl查询公网出口IP
curl -i http://ip.sb
任何软件
Mac OS开启安装任何来源软件
sudo spctl --master-disable
睡眠优化
Mac OS系统睡眠优化代码
sudo pmset -a hibernatemode 0
sudo rm -rf /var/vm/sleepimage
sudo mkdir /var/vm/sleepimage
sudo pmset -a standby 0
sudo pmset -a autopoweroff 0
显示路径
Mac OS让Finder标题中显示文件路径
defaults write com.apple.finder _FXShowPosixPathInTitle -bool YES
显示文件
Mac OS让Finder中显示隐藏文件
defaults write com.apple.finder AppleShowAllFiles TRUE
killall Finder
# 如果想恢复默认设置,只需要把上面的True改成FALSE即可
图标大小
Mac OS调整Launchpad图标大小
# 调整每一列显示的图标数量,6表示显示6个
defaults write com.apple.dock springboard-rows -int 6
# 调整每一行显示的图标数量,8表示显示8个
defaults write com.apple.dock springboard-columns -int 8
#重启Dock和Launchpad
defaults write com.apple.dock ResetLaunchPad -bool TRUE
killall Dock
# 使用下面的命令恢复到默认设置
defaults write com.apple.dock springboard-rows Default
defaults write com.apple.dock springboard-columns Default
killall Dock
关闭报告
Mac OS关闭崩溃报告显示
# 如果希望关闭崩溃报告窗口在桌面的显示,只需在「终端」中输入如下命令,回车确认即可。下次如果有应用程序崩溃或意外退出,崩溃报告将不再会在桌面中显示
defaults write com.apple.CrashReporter DialogType none
# 恢复成默认的对话框形式的话,只需执行如下命令
defaults write com.apple.CrashReporter DialogType crashreport
显示报告
Mac OS崩溃报告在「通知中心」显示
# 如果你希望让崩溃报告在「通知中心」显示,只需在「终端」中输入如下命令,回车确认即可。下次如果有应用程序崩溃或意外退出,崩溃报告将以通知的形式显示在屏幕右上角
defaults write com.apple.CrashReporter UseUNC 1
# 恢复成默认的对话框形式的话,只需执行如下命令
defaults write com.apple.CrashReporter UseUNC 0
部分内容参考:iTimothy