- Linux程序設計(第4版)
- (英)Neil Matthew Richard Stones
- 532字
- 2021-04-09 20:04:39
2.2 一點哲學
現在,我們來關注一點UNIX(當然也是Linux)的哲學。UNIX架構非常依賴于代碼的高度可重用性。如果你編寫了一個小巧而簡單的工具,其他人就可以將它作為一根鏈條上的某個環節來構成一條命令。Linux讓用戶滿意的原因之一就是它提供了各種各樣的優秀工具。下面是一個簡單的例子:

這個命令使用了ls和more工具并通過管道實現了文件列表的分屏顯示。每個工具就是一個組成部件。通常你可以將許多小巧的腳本程序組合起來以創建一個龐大而復雜的程序。
例如,如果你想打印bash使用手冊的參考副本,可以使用如下命令:

此外,因為Linux具備自動文件類型處理功能,所以使用這些工具的用戶一般不必了解它們是用哪種語言編寫的。如果想要這些工具運行得更快,常見的做法是首先在shell中實現工具的原型,一旦確定值得這么做,然后再用C或C++、Perl、Python或者其他執行得更快速的語言來重新實現它們。相反,如果在shell中這些工具工作得已足夠好,就不必再重新實現它們。
是否需要重新實現腳本程序取決于你是否需要對它進行優化,是否需要將程序移植到其他系統,是否需要讓它更易于修改以及它是否偏離了其最初的設計目的(這種情況經常發生)。
如果你對shell腳本充滿好奇,Linux系統中已經裝有許多的shell腳本例子,包括軟件包安裝程序、.xinitrc和startx文件以及/etc/rc.d目錄中用于啟動時配置系統的腳本程序。
推薦閱讀
- Learn ECMAScript(Second Edition)
- Node.js Design Patterns
- LabVIEW2018中文版 虛擬儀器程序設計自學手冊
- Developing Middleware in Java EE 8
- Unity Virtual Reality Projects
- 精通軟件性能測試與LoadRunner實戰(第2版)
- Web Application Development with MEAN
- Effective Python Penetration Testing
- UML 基礎與 Rose 建模案例(第3版)
- Python數據結構與算法(視頻教學版)
- Learning OpenStack Networking(Neutron)
- NetBeans IDE 8 Cookbook
- 跟戴銘學iOS編程:理順核心知識點
- Mastering JavaScript Promises
- 信息學奧林匹克競賽初賽精講精練