命令行與GUI,你更喜歡用哪個?
原創【51CTO精選譯文】在Linux桌面領域,其圖形用戶界面一直飽受詬病,老用戶通常會發牢騷。但我們應該實事求是,特別是最近幾年Gnome,KDE,Xfce和其它桌面系統已經付出了很大的努力,要不然Linux也不會取得今天的成就。
有了圖形界面后,我們就不用再記憶復雜的命令,據統計,80%的常規任務都可以在圖形界面下完成。盡管如此,命令行仍然有它獨特的優勢,雖然一般用戶會將命令行認為是史前動物,但與圖形界面相比,它確實能給你提供更多的選擇。
事實上,對于許多管理任務來說,使用命令行比圖形界面還更簡單,查看我的Bash歷史記錄后,我發現至少有五種情況我更喜歡使用命令行,而不是圖形界面。
1、文件管理
不管你是想復制,移動還是想刪除文件,Bash shell總是比KDE的Dolphin和Gnome的Nautilus更順手,這些圖形界面文件管理工具會不停地彈出提示對話框,它總把你當菜鳥對待。此外,菜單和工具條很少有符號鏈接的入口,大部分桌面用戶也很少知道它們的存在,或是何時使用它們。
相比之下,使用命令就簡單多了,如復制命令cp,首先,你可以決定是否要顯示確定提示,如文件覆蓋的確認,如果你想歸檔或備份文件,你可以選擇創建符號鏈接,而不是復制,也不用考慮是否要保存文件屬性。其它文件管理命令的功能一樣很豐富。
移動大量文件時,桌面很可能無法動彈,你只能等待移動完成,在此期間你無法做其它事情,更糟的是,你還無法保證移動操作就會成功,這些問題在命令行下根本就不會出現。
2、列出文件和屬性
和文件管理命令類似,ls命令比任何圖形界面工具提供的內容都多,的確,ls不能顯示文件類型圖標,但可以用顏色和符號代表不同的文件類型。
Ls也具有圖形界面工具的所有過濾器,包括是否顯示隱藏和備份文件,也可以按擴展名,文件大小,修改時間和文件版本排序。
我更喜歡ls,特別是它的-l和-g參數,它們讓文件的所有屬性全部在一行上顯示出來了。
相比之下,使用圖形工具時,你想要在一個界面查看所有屬性是不可能的,就目前最新的圖形界面工具,查看文件屬性有時也需要鼠標點擊多次。
3、使用crontab調度作業
有些應用程序可以直接秒殺圖形界面,如Apache,它有數百個配置選項,現在雖有圖形界面的配置工具,但我一般不會使用它,另一個例子是crontab,我研究過它的圖形界面工具crontag,我的結論是,它永遠取代不了命令行工具。
4、安裝軟件包
不管是apt-get還是yum,都提供了相應的圖形操作界面,我想說它們的確是給菜鳥用的,當你需要處理大量文件時,不管是Synaptic還是Ubuntu軟件中心都幫不上忙。
此外,如果你想在用戶登錄后立即安裝點什么,通常會與更新小程序發生沖突,這個時候你要么等待,要么決定停止其中一個。
即使在最佳狀態,圖形界面軟件包管理工具與命令行比起來也沒有足夠的優勢,命令行工具簡單易學,返回的信息更豐富,尤其在基于.deb的系統上更是如此,對于很多人而言,一提到命令行就感到很恐懼,一看到圖形界面總感覺很輕松,這是因為人的慣性思維造成的,其實只要堅持使用命令行,要不了多久,你就會想拋棄圖形界面,要不然這個世界也不會出現這么命令控。
5、圖形界面工具功能不完整
有時候使用圖形界面操作確實比較愜意,但有時你不得不拿起命令行工具,因為圖形工具還沒有進化到可以完全取代命令工具的地步,有些操作在圖形界面是根本就沒有實現。
圖形界面本身就是為一般用戶設計的,管理員最好還是使用命令,這是沒有辦法的事情,因為在所有發行版中,圖形界面下提供的管理工具其功能本身就很有限。
事實上,很多命令行工具壓根兒就沒有設計圖形界面,包括NIS,SSH,modprobe等,特別是那些涉及到系統參數設置,網絡設置,系統安全設置等管理工作,命令行絕對是可以100%助你完成任務,而圖形界面工具就很難說了。
就我個人而言,我非常喜歡Debian的dpkg-reconfigure,它提供了一個基于文本的界面重新配置主要的子系統,如視頻或區域設置,但我不知Ubuntu為何要想方設法貶低dpkg-reconfigre,何況Ubuntu的圖形工具還沒有它好用。
最好的工具
雖然命令行是如此的優秀,但仍然只有少部分Linux桌面用戶喜歡它,奇怪的是,那些長期依賴于圖形界面的人卻以專家身份自居,我都感到很羞愧,簡直有點荒謬。不可否認,在需要可視化顯示時,圖形界面尤其特有的優勢,這也是我對LaTeX不感冒的原因,事實上,如果你愿意堅持,使用LaTeX一樣可以排好版,當然有人這么做,我不使用它是因為我覺得使用圖形界面工具更節省時間。
但現在出現了一個很大的問題,幾乎所有Linux廠商都在努力消滅命令行,他們希望用戶永遠停留在圖形界面,甚至有人建議將圖形桌面寫入Linux內核,我不知道這一天是否會到來,因為我喜歡的那些命令行工具也許會突然停止開發,我想我要在這里控訴這些廠商,一定有很多人頂我吧。
最后,我想說的是,不管是圖形界面工具還是命令行工具,只有順手的才是最好的。
【51CTO.com譯稿,轉載請注明原文譯者和出處。】
【編輯推薦】