為什么命令行在 Linux 生態系統中如此重要
當您開始使用 Linux 時,您會發現盡管存在眾多桌面環境,但該系統比其他操作系統更依賴命令行。為什么是這樣?
命令行成為 Linux 生態系統的重要組成部分有很多原因。
1. Unix 剛開發的時候,還沒有 GUI
雖然 Linux 不是 Unix,因為它沒有來自系統的代碼,但它的行為是基于它的,包括它對命令行的使用。當 Unix 在 60 年代末和 70 年代初在貝爾實驗室開發時,還沒有圖形用戶界面之類的東西。
大多數人在網絡穿孔卡片 punch cards 上提交他們的程序,而幸運的少數人能夠使用終端與系統交互,例如 Unix 的創造者:Dennis Ritchie 和 Ken Thompson。
這些終端要么是電傳打字機,要么是視頻終端,它們只是一個屏幕和一個鍵盤。這兩種類型的終端都只支持文本,不支持圖形。
命令行界面對于這種類型的終端來說是很自然的。文本終端的使用也是 Unix 開發人員更喜歡短命令名的一個主要原因,因為它們打字速度更快。
2.編程工具使用命令行
程序員一直是 Linux 最堅定的擁護者,因為它有很多工具可供他們完成工作:解釋器、編譯器和調試器。所有這些工具都在命令行上運行。
雖然您可以從圖形 IDE 調用所有這些,但它只是某處命令行的前端。
3.命令行速度快
許多 Linux 用戶喜歡聲稱 Linux 命令行比使用 GUI 更快。命令行程序比圖形程序啟動得更快,因為開銷更少。
這就是當 Linux 首次在 PC 上首次亮相時,發行版默認使用控制臺環境的原因之一。那個時代功能較弱的 PC 通常很難運行 X,至少在桌面系統配備的少量 RAM 的情況下。
您可以看到,在 90 年代初一臺具有 4MB 內存的 i386 PC 在加載一個簡單的 X 窗口管理器時有多么困難,而當時這樣的內存是很不錯了。
4. 命令行無處不在,包括服務器
命令行在 Linux 系統上幸存下來的一個重要原因是它幾乎可以在任何地方工作。如果 X 不支持你的顯卡,這個問題在早期的 Linux 系統上也很常見,你會發現自己被控制臺拋棄了。這意味著您可以在需要時回退到命令行。
出于這個原因,僅使用命令行界面安裝 Linux 服務器是很流行的。這允許更有效地使用服務器。畢竟,如果沒有人會看到它,就不需要 GUI。
許多管理員更喜歡通過 SSH 遠程登錄來管理他們的服務器。這種較低的開銷允許 Linux 服務器比 Windows 服務器更有效地運行。
5. 命令行程序可以編寫腳本
與圖形程序相比,命令行程序的一大優勢是程序員可以自動化它們。
如果您使用文件管理器等圖形程序,您經常會遇到重命名文件等重復操作。如果您有很多文件,使用 GUI 文件管理器可能會變得乏味。shell 允許您使用通配符來生成文件列表。
如果您想將所有文本文件復制到一個目錄,您可以使用這一行:
[linuxmi@localhost ~]$ cp *.txt linuxmi.com
您還可以將腳本語言用于更復雜的任務。多年來,首選的腳本語言是 shell。shell 的優點是您可以在腳本的命令行中使用熟悉的程序。
雖然 Perl 和 Python 等腳本語言使用庫,但如果庫不存在,也可以使用標準 Linux 程序。
現在你知道為什么 Linux 如此多地使用命令行了
如果您對命令行對 Linux 的重要性感到困惑,那么您現在知道它對于服務器和開發等許多技術用途的重要性。它甚至讓計算機為您工作,而不是相反。
如果您剛剛開始使用 Linux 命令行并感到迷茫,請繼續閱讀以獲取有關使用 shell 充分利用 Linux 系統的更多提示。