歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> Unix命令 >> 命令導向讓Unix系統命令一氣呵成

命令導向讓Unix系統命令一氣呵成

日期:2017/2/28 10:47:19   编辑:Unix命令
unix命令

在Unix中有一個很實用的功能即命令導向功能。簡單的是說,命令導向就是可以把幾個單獨的命令通過導向符號把他們連接起來。如此的話,系統工程師為了達到每個特定的目的,不用在分布去執行某些命令,而可以把這些單獨的命令組合起來,一氣呵成。

如上圖所顯示的ls、>、wc三個命令主要用來統計某個文件夾下特定文件的個數。此時可以通過命令導向功能把三個命令合並成一個ls | wc命令來完成。如現在用戶文件夾/mnt/share下總共有八十多個文件夾。但是現在系統工程師要確切知道這個share文件夾下文件夾與文件的確切數字,該怎麼辦呢?若要一個個去數,也可以。但是這個笨辦法的話,比較浪費時間,而且也容易數錯。為了達到這個目的,我們可以通過幾個相關的命令來實現。

  第一個命令:文件列表命令ls。

  在Window系統中,可以通過dir命令來顯示某個特定目錄下面的文件夾與文件信息。其實在Unix系統中也有類似的命令,如ls文件列表命令。不過這個命令要比dir命令功能上要強的多。如ls命令後面加入-l參數還可以顯示各個文件夾與文件的權限信息。而dir命令沒有這方面的功能。利用ls命令可以列出某個特定目錄下的文件。如現在系統工程師想要查看文件嘉share下面的文件以及文件夾信息,可以先定位到這個文件夾下,然後使用ls命令來查看所有的文件夾與文件信息。通常情況下,此時文件夾或者文件顯示的順序是按ascll碼進行排序的。也就是說,按字母進行排序,並且大寫字母會排在小寫字母之前。如果這個文件夾下的文件(文件夾)數據不多的話,那麼數數的話,也可以比較快的得到正確的結果。但是,若文件(文件夾)比較多的話,如一頁還顯示不完,此時若靠數的話,顯然不能夠很快得到正確的結果。此時,就需要通過其他命令來幫助系統工程師來完成這個任務。

  第二個命令:輸出重定向功能。

  在實際工作中,系統工程師除了可以在終端輸入ls命令的執行結果之外,還可以使用一個特殊的命令“>”(輸出重定向命令)把執行結果保存到一個文件夾裡。如可以通過ls > total 命令把ls命令顯示的結果保存在total文件中。當系統工程師執行完這個命令之後,系統除了在屏幕上出現一個提示符之外,將不會顯示任何相關的內容。這就是unix系統下shell外殼的重定向功能。這個重定向功能可以把本來應該在屏幕上顯示的內容重定向到一個用戶指定的文件中。Shell外殼程序會先對重定向符號前面的命令進行解釋並,注意此時只是解釋命令但是並不執行。然後shell程序會打開重定向符號後面的文件。第三步才是執行這個命令,並把搜索到的結果保存到用戶指定的文件中。如果系統工程師要查看這個文件中的內容,則可以通過cat命令來查詢。如cat total就可以查看這個文件中的內容。

  第三個命令:統計文件的行數命令。

  雖然已經通過輸出重定向功能,把share文件夾下的所有文件(文件夾)信息保存到了一個特定的文件下。但是,此時系統工程師仍然不能夠一目了然的知道文件夾下文件與文件夾的總個數。雖然通過一個個數也可以達到預計的目的,但是這個太麻煩。雖然可以省去ls命令卷屏的麻煩,不過准確率仍然不是很高。此時,系統工程師就需要用到統計文件行數的命令wc。

  當通過輸出重定向功能把ls的結果輸出到一個文件中後,在存儲的時候每個文件夾文件將會是獨立的一行。也就是說,如果能夠通過相關的命令統計出這個文件的行數字的話,那麼這個行數就是文件或者文件夾總的個數。為了達到這個目的,系統工程師就可以通過wc total命令來統計這個文件中的行數。執行這個命令後,系統會顯示如下一行內容。

  $ wc total

  85 85 356 total

Copyright © Linux教程網 All Rights Reserved