一些經(jīng)典 Linux 命令的現(xiàn)代替代品
當(dāng)你 開(kāi)始學(xué)習(xí) Linux 時(shí),最初學(xué)習(xí)的是一套標(biāo)準(zhǔn)的 Linux 命令,這些命令從 UNIX 時(shí)代就已經(jīng)存在了。隨著你作為一個(gè) Linux 用戶的年齡增長(zhǎng),你會(huì)不斷地掌握這套標(biāo)準(zhǔn)命令。
但是,這些標(biāo)準(zhǔn)的、傳統(tǒng)的命令是幾十年前創(chuàng)建的,雖然它們完成了預(yù)定的工作,但是它們的功能還可以改進(jìn),結(jié)構(gòu)還可以簡(jiǎn)化。
這就是為什么存在 “替代” 工具,以加強(qiáng)傳統(tǒng)的 UNIX/Linux 命令。在這篇文章中,我將列出一些新的命令行工具,你可以用這些工具來(lái)代替舊式的經(jīng)典 Linux 命令。
請(qǐng)注意,你不應(yīng)該過(guò)分依賴(lài)這些替代品,特別是如果你管理(或計(jì)劃管理)許多 Linux 服務(wù)器時(shí)。傳統(tǒng)的 Linux 命令在所有的 Linux 發(fā)行版和 Linux 服務(wù)器上都可以找到。這些現(xiàn)代的替代方案很有可能在遠(yuǎn)程服務(wù)器上無(wú)法使用。
在你的個(gè)人能力范圍內(nèi),你可以學(xué)習(xí)了解這些新的工具,以幫助你更有效率。
聽(tīng)起來(lái)不錯(cuò)?讓我們看看你是否能在這里找到你下一個(gè)最喜歡的命令行工具。
HTTPie: wget 和 curl 的替代品
在終端下載文件 時(shí),wget 和 curl 是兩個(gè)最常用的工具。有趣的是,并不是所有的發(fā)行版都默認(rèn)安裝了 curl 和 wget。
HTTPie(http)以一種更人性化的方式做同樣的工作。你會(huì)看到彩色的、格式化的輸出,這使得它更容易理解和調(diào)試。
蝙蝠:貓的替代品
cat 命令可能是你最先學(xué)會(huì)的命令之一。它可以完成查看小型文本文件內(nèi)容的工作。
但 bat 命令 更上一層樓,添加了語(yǔ)法高亮和 Git 集成等功能,并且還提供了分頁(yè)選項(xiàng)。
ncdu: du 命令的替代品
Linux 中的 du 命令 用來(lái)檢查一個(gè)目錄的大小。這不是一個(gè)非常直觀的命令,當(dāng)然它的默認(rèn)輸出也不算非常好。
與此相比,ncdu 要好得多,它能及時(shí)提供相關(guān)信息。
它還有其他一些功能,比如用圖表顯示磁盤(pán)使用情況,對(duì)顯示進(jìn)行排序,甚至可以交互式地刪除目錄。
它是基于 ncurses 的,因此 “nc” 這個(gè)前綴被加到 du 中。此外,還有一個(gè)類(lèi)似的 CLI 工具:gdu,也是一個(gè) du 的替代品,因?yàn)槭鞘褂? Go 編寫(xiě)的,這使得它的性能得到了提升。
htop: top 命令的替代品
top 命令是 Linux 終端中的任務(wù)管理器。它是一個(gè)查看運(yùn)行進(jìn)程和資源消耗的好工具,但是 理解和使用 top 命令 可能很復(fù)雜。
另一方面,htop 有一個(gè)漂亮的彩色輸出,并且界面比 top 命令更直觀。你可以垂直和水平滾動(dòng),以圖形方式配置顯示的信息。你可以在 htop 的輸出屏幕上交互式地殺死進(jìn)程。
fd:find 命令的替代品
find 命令是最強(qiáng)大和最常用的 Linux 命令之一。不能想象一個(gè)系統(tǒng)管理員可以不使用 find 命令就能生存下去。
但是,find 命令的結(jié)構(gòu)奇怪,如果你進(jìn)行大量的查找操作,它可能會(huì)很慢。
一個(gè)更好、更快的替代方案是 fd 命令。fd 是用 Rust 編寫(xiě)的,它比其傳統(tǒng)的競(jìng)爭(zhēng)對(duì)手更簡(jiǎn)單、更快速。
exa:ls 命令的替代品
exa 命令行工具不止可以列出目錄內(nèi)容。它的默認(rèn)設(shè)置更好,使用顏色來(lái)區(qū)分文件類(lèi)型和元數(shù)據(jù)。exa 還可以顯示一個(gè)文件的擴(kuò)展屬性,以及標(biāo)準(zhǔn)的文件系統(tǒng)信息,如 inode、塊數(shù),以及文件的各種日期和時(shí)間。
你可以使用樹(shù)狀視圖來(lái)查看目錄結(jié)構(gòu)。它也有內(nèi)置的 Git 支持,可以看到哪些文件被修改、提交和暫存等。
duf:df 命令的替代品
Linux 中的 df 命令 用來(lái)檢查磁盤(pán)空間。雖然它在大多數(shù)情況下都不錯(cuò),但一個(gè)更簡(jiǎn)單、更好的替代方法是 duf,這是一個(gè)用 Go 編寫(xiě)的工具。
它提供了一個(gè)所有掛載設(shè)備的概覽,這很容易理解。你還可以指定一個(gè)目錄/文件名并檢查該掛載點(diǎn)的可用空間。
通過(guò) duf,你可以對(duì)輸出進(jìn)行排序、列出 indoe 信息,甚至將輸出保存為 JSON 格式。
太長(zhǎng)不讀:男人的替代品
我知道對(duì)于純粹主義者來(lái)說(shuō),Linux 中的手冊(cè)頁(yè) 是不二之選。但是,手冊(cè)頁(yè)有時(shí)會(huì)過(guò)于詳細(xì)和復(fù)雜,難以閱讀和理解。
這就是 tldr 登場(chǎng)的時(shí)機(jī)。“TLDR” 是流行的互聯(lián)網(wǎng)行話,意思是“太長(zhǎng)不讀to long didn't read”。這就是他們創(chuàng)建 tldr 的想法。如果你覺(jué)得手冊(cè)頁(yè)太長(zhǎng)而不想閱讀,tldr 通過(guò)提供命令的實(shí)際例子而將其簡(jiǎn)化了。
Neovim:Vim 的替代品
我希望我在這里沒(méi)有冒犯誰(shuí),但更好的 Vim 不是 Emacs,而是 Neovim。
幾年前,作為對(duì)傳統(tǒng)的 Vi 編輯器的改進(jìn),Vim 出現(xiàn)了。又是幾年過(guò)去了,Neovim 提出了將 Vim 擴(kuò)展為一個(gè) IDE 的想法。
它增加了現(xiàn)代終端的功能,如光標(biāo)樣式、焦點(diǎn)事件、括號(hào)內(nèi)粘貼等,并內(nèi)置了一個(gè)終端模擬器。最重要的是,你不需要忘卻 Vim 的習(xí)慣就可以開(kāi)始使用 Neovim。
你的選擇呢?
再次強(qiáng)調(diào),這些替代命令還不能完全替代原來(lái)的命令,特別是如果你管理許多 Linux 系統(tǒng)的話。你可能無(wú)法在所有的系統(tǒng)上找到并安裝它們。只有你可以完全控制你的 Linux 機(jī)器時(shí),它們才是好東西。