Mac OS 常用命令行工具使用 MacOS 已经有1年的时间，积累了一些常用技巧，其中大部分是命令行。在这里记录一下我使用的命令和一些命令行工具，主要是怕忘了。命令行工具autojumpautojump 是一款非常方便的命令行下的目录跳转工具，它能帮你快速从目录访问的历史记录中统计出各个目录的访问频次和权重，这样，就能方便的让你在各个目录中迅速跳转了。只要你记得之前某个访问过的目录的大概名字，配合autojump，就能快速的跳转过去，再也不用打一长串的 cd 命令了。使用方式如下：# Mac OS下安装autojump brew install autojumpthe fuckthefuck 是一个非常有趣的命令行软件，它能自动帮你纠正敲错的命令。平时在快速输入命令的时候，难免会有一些字母输入错误，这个时候，不用担心，直接再输入一个 fuck，吐槽一下，thefuck 就能自动根据你的输入，猜测出你要输入的命令，并自动帮你纠正，方便得一bi:# Mac OS下安装the fuck brew install thefucktigGit已经成为我们平时经常用到的版本控制管理工具。通常，我们用 git log 命令来查看git提交的历史记录。如果你已经厌倦了 git log 那种千篇一律的界面，那么 tig 绝对是一个不可错过的命令行下查看git历史提交记录的工具:# Mac OS下安装tig brew install tiggit summary平时我们在多人合作开发一个项目的时候，想要大致了解一下每个人对这个项目提交的commit数量和大致的贡献度，那么 git summary 这个命令绝对能满足你的要求：git summary 通过对项目中每一个commit的统计，能大致计算出每个contributor的提交次数和贡献百分比。让你对这个项目的贡献度能一目了然。默认git是不会带有这个命令的，需要在Mac OS下额外安装一个扩展包：brew install git-extrasslsl 是一个搞怪的程序，平时我们在输入命令 ls 的时候，经常手误会输入成为 sl。而 sl 这个搞怪的程序，就会在你手误输入错误的时候，让一辆火车满屏疾驰而过…… 是的，它啥也不干，就是让一辆火车从你的屏幕疾驰而过…… 这种逼格满满的骚操作，一定会让你的同事都过来围观……# Mac OS下安装sl brew install slskmSKM，全称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/skmydictydict 是一个用来在命令行方式下使用的有道词典，能在命令行下快速的帮你查询单词，不用打开浏览器，输入网址等一系列繁琐的操作。输入命令即可快速搞定!# Mac OS下安装ydict brew tap timothyye/tap brew install timothyye/tap/ydicterer 也是一个命令行工具，用来在命令行下查询和换算货币汇率，看一下使用方式，就知道如何使用了：# 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