終端是程式設計師的必備工具之一,然而不同的程式設計師使用終端的效率卻千差萬別,究竟那些高效的程式設計師都用了哪些神器呢?本文就將介紹許多這樣牛逼且實用的開源工具,用上這些工具,即使是命令列新手也能在終端下游刃有餘。
本文僅對工具做基本介紹,不提供安裝方法,因為這些工具的安裝方法在專案的 github 首頁上基本都會提供,在掘金上也能找到許多具體的使用教程。
在終端準備部分介紹的工具是跟作業系統相關的,終端內的命令列工具則基本上是 跨平臺
的,可以在 mac、linux、windows 上使用。
本文介紹的工具在下表中可以查閱,資料按照發文時的 star 數量倒序排列,方便讀者朋友挑選。
終端準備
Windows Terminal
看這 star 數量,便知無需過多介紹,微軟多年後終於意識到自家的終端實在是太簡陋了,用上 Windows Terminal 後可以拋棄掉 cmder、cygwin 了。
要讓其發揮終端的強大威力,還需要安裝 WSL2
,推薦安裝 ubuntu。
可以為不同的 shell 環境設定不同的背景、主題,其還支援與 VS Code 一樣的 CTRL+SHIFT+P
快捷鍵開啟快速命令視窗,方便操作。
iTerm2
作為 mac 上首選用來替換預設終端的 iTerm2 自然也無需過多介紹,它擁有超多的特性,比如:分割皮膚、快捷鍵增強、優化的搜尋、自動完成、貼上歷史、高度可配置等等,它擁有超多的主題,主題的 star 數量甚至超過本體的 star 數量。
功能介紹:iterm2.com/features.ht… 。
豐富主題:github.com/mbadolato/i… 。
shell 環境
oh my zsh
超過 12 萬的 star 數,可見 oh my zsh 多麼受歡迎,該專案主要用於簡化 zsh 的配置,自帶並支援超多有用的外掛。
Oh My Zsh will not make you a 10x developer...but you may feel like one!
oh my zsh 官網的這段話很有意思——它不會讓你變成 10 倍程式設計師,但可能會讓你覺得自己是一個。
-
zsh-syntax-highlighting
一句話點評:語法高亮為終端增添色彩。
-
zsh-autosuggestions
一句話點評:程式設計師怎能離開智慧提示?
-
z
一句話點評:切換目錄比資源管理器用起來還方便。
powerline
終端本身是高效的,但有時也略顯乏味,使用 powerline 可以為終端加上強大的 狀態列
,比如在 vim 中顯示當前狀態,在開啟 git 目錄時顯示當前分支等等。
系統工具
檔案管理器
很多人用不慣終端的一個原因就是在上面無法像 windows資源管理器或 finder 一樣操作檔案,實際上有許多開源的命令列檔案管理器,下面介紹兩個熱門的,大家按需選用。
-
ranger
Ranger 使用 Python 編寫,預設為使用
vim
風格的按鍵繫結,對於使用 vim 的使用者來說幾乎沒有學習成本,能夠快速上手使用。 -
nnn
nnn (n³) 是一個功能齊全的終端檔案管理器,速度非常快且幾乎 0 配置,也是一個非常不錯的選擇。
vim
終端下還有比 vim 更好用的文字編輯器嗎? vi 不僅僅是一個文字編輯器,它無處不在,如果說 10 倍程式設計師有什麼標配,那 vim 大概率會是其中之一。
要調教好 vim 也需要一番配置,有不少人在 Github 上分享自己的配置檔案,但要說最好用且適合大多數人的還是下面這個專案。
-
vimrc
命令增強
終端下有許多原生的命令可以滿足基本使用,但有些命令並不足夠好用,下面介紹幾個替代工具。
-
exa
一句話點評:用來替換
ls
命令的現代化工具。 -
fd
一句話點評:簡單、快速、好用,用於替換
find
的搜尋工具。 -
bat
一句話點評:
cat
的替代品,是猛男就用 bat。
其他讓人讚歎的工具
fzf
fzf 是一款支援模糊搜尋的互動式工具,可以用來查詢任何列表內容,包括檔案、Git 分支、程式等。
tldr
tdlr 是 Too long, Don't read
的縮寫,可以幫助你快速檢視常用命令的使用例項,比如 tar 命令,那後面一長串引數誰記得清呢?當然,linux 大佬除外。
The Fuck
在終端下是不是經常輸錯命令,搞得自己心煩意亂,The Fuck
是一款了不起的工具,幫你徹底解決這個問題,當你輸錯命令後,只要輸入 fuck
命令,它會幫你自動糾正錯誤,精彩之極!
w3m
真正的程式設計師就該使用命令列來瀏覽網頁。
10 倍程式設計師之路
w3m 這個專案已經基本不維護了,以這個命令來結束本篇文章,因為還有許多像這樣優秀好玩的工具等待我們去發現、去創造。
程式設計師的雙手是魔術師的雙手,他們將程式碼轉變成豐富多彩的軟體,即使是平平無奇的終端竟然也能玩出許多花樣。
普通程式設計師使用工具,10 倍程式設計師使用優秀的工具再造工具,10 倍程式設計師不是概念,而是真實存在的,從點滴做起,追求極致的效率,加油,程式設計師們。
既然已經看到這裡,不防點個贊, star 一下,github(沒有廣告,交個朋友 ?)。