Linux Cat命令除去空白行代碼實現
輸入文件按照它們在Linux Cat命令后的排列順序被打印,因此,要調換信息的順序,就必須先調換輸入文件的順序。此外,當需要處理的文件數目對于您來說過大而無法手工輸入這些文件的名稱時,您可以使用通配符,如在catchapter*>book中使用的那樣,記住,文件名將會按升序排列。當您突然發現chapter13被發送到輸出中時會在chapter2之前,而會在chapter02之后時,這會引起很有意思的問題。
當Linux Cat命令的輸出沒有被重定向到一個文件或另一個命令的標準輸出時,Linux Cat命令表現出來的行為與多數命令行工具一樣,即將其輸出發送到控制臺。這意味著您可以使用Linux Cat命令來顯示文件;例如,您可以使用cat/etc/passwd來顯示系統密碼文件的內容。為方便起見,您應該用less查看大文件,如在less/etc/passwd中那樣(您可以通過輸入manless學習更多關于less的知識)。
盡管Linux Cat命令主要用于合并文件,您還可以將它用于輸入的簡單自動處理。例如,您可以使用一個單獨的空白行來除去多行空白行(使用-s選項),這是一個在您將源代碼公諸于世前進行清除工作的好辦法。遺憾的是,cat并沒有用于一次清除所有空白行的選項。但這并不是什么大問題,因為您可以使用方便的sed命令將這些空白行除去:
清單1.使用sed與Linux Cat命令除去空白行$cat-s/etc/X11/XF86Config|sed'/^[[:space:]]*$/d'
- ...
- #MultipleFontPathentriesareallowed(theyareconcatenatedtogether)
- #Bydefault,RedHat6.0andlaternowuseafontserverindependentof
- #theXservertorenderfonts.
- FontPath"/usr/X11R6/lib/X11/fonts/TrueType"
- FontPath"unix/:7100"
- EndSection
- ...
對于讀取配置文件和HTML頁面的源文件,特別是那些由腳本生成的插入了不必要新行的源文件,以及那些包含大型條件結構(其各個項之間已經用空行分開)的源文件來說,空白行緊縮是一個方便的技巧。
Linux Cat命令的另外一個重要的功能是它可以對行進行編號。這種功能對于程序文檔的編制以及法律和科學文檔的編制很方便。打印在左邊的行號使得參考文檔的某一部分變得容易。這在編程、科學研究、業務報告或甚至是立法工作中都是非常重要的。對行進行編號功能有兩個選項:-b選項(只能對非空白行進行編號)和-n選項(可以對所有行進行編號):
本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/zyofprogrammer/archive/2007/06/10/1647224.aspx
【編輯推薦】























