20個堪稱神器的 Linux 命令行軟體

  • 2019 年 11 月 6 日
  • 筆記

作者丨int32bit、grapeot、智多芯

https://www.zhihu.com/question/59227720

1.ag:比grep、ack更快的遞歸搜索文件內容。

2.tig:字元模式下交互查看git項目,可以替代git命令。

3.mycli:mysql客戶端,支援語法高亮和命令補全,效果類似ipython,可以替代mysql命令。

4.jq: json文件處理以及格式化顯示,支援高亮,可以替換python -m json.tool。

5.shellcheck:shell腳本靜態檢查工具,能夠識別語法錯誤以及不規範的寫法。

6.yapf:Google開發的python程式碼格式規範化工具,支援pep8以及Google程式碼風格。

7.mosh:基於UDP的終端連接,可以替代ssh,連接更穩定,即使IP變了,也能自動重連。

8.fzf:命令行下模糊搜索工具,能夠互動式智慧搜索並選取文件或者內容,配合終端ctrl-r歷史命令搜索簡直完美。

9.PathPicker(fpp):在命令行輸出中自動識別目錄和文件,支援互動式,配合git非常有用。

運行以下命令:

git diff HEAD~8 --stat | fpp  

10.htop: 提供更美觀、更方便的進程監控工具,替代top命令。

11.axel:多執行緒下載工具,下載文件時可以替代curl、wget。

axel -n 20 http://centos.ustc.edu.cn/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1511.iso  

12.sz/rz:互動式文件傳輸,在多重跳板機下傳輸文件非常好用,不用一級一級傳輸。

13.cloc:程式碼統計工具,能夠統計程式碼的空行數、注釋行、程式語言。

14.ccache:高速C/C++編譯快取工具,反覆編譯內核非常有用。使用起來也非常方便:

gcc foo.c  

改成:

ccache gcc foo.c  

15.tmux:終端復用工具,替代screen、nohup。

16.neovim: 替代vim。

17.script/scriptreplay: 終端會話錄製。

script -t 2>time.txt session.typescript # 錄製開始# your commandsexit # 錄製結束  

回放:

scriptreplay -t time.txt session.typescript  

18.you-get: 非常強大的媒體下載工具,支援youtube、google+、優酷、芒果TV、騰訊影片、秒拍等影片下載。

還有mac專有的pbcopy/pbpaste:

把命令行輸出拷貝到系統粘貼板:

cat test.sh| pbcopy  

把系統粘貼板內容拷到終端:

pbpaste  

mac下的say命令支援多種語言(英語、普通話、粵語)文本朗讀,支援各種銷魂恐怖的語氣。跑這個命令感受下,小心被嚇著了:

for i in `say -v '?' | cut -d ' ' -f 1`; do echo $i && say -v "$i" 'Hello World';done  

19.thefuck:

用途是每次命令行打錯了以後,打一句fuck就會自動更正命令。比如apt-get打成了aptget。fuck以後自動變成apt-get。但還是沒加sudo。再fuck,成功!

又比如git branch打成了git brnch。fuck!更正成git branch。

又比如python打成了puthon。fuck!一秒變python。

而且關鍵是每次打命令和內心os完全一致,有種人機合一的快感。fuck!

20.tldr: 如果你經常不想詳讀man文檔,那麼你應該試試這個小工具。

使用 $ man tar時

使用 $ tldr tar 時