Linux循序漸進(08)(轉)
Linux循序漸進(08)(轉)[@more@] 第十課(四) 檔案內容統計命令 wc命令 wc命令的功能為統計指定檔案中的位元組數、字數、行數, 並將統計結果顯示輸出。 語法:wc [選項] 檔案… 說明:該命令統計給定檔案中的位元組數、字數、行數。如果沒有給出檔名,則從標準輸入讀取。wc同時也給出所有指定檔案的總統計數。字是由空格字元區分開的最大字串。 該命令各選項含義如下: - c 統計位元組數。 - l 統計行數。 - w 統計字數。 這些選項可以組合使用。 輸出列的順序和數目不受選項的順序和數目的影響。總是按下述順序顯示並且每項最多一列。 行數、字數、位元組數、檔名 如果命令列中沒有檔名,則輸出中不出現檔名。 例如: $ wc - lcw file1 file2 4 33 file1 7 52 file2 11 11 85 total 省略任選項-lcw,wc命令的執行結果與上面一樣。 第十課(五) 檔案比較命令 這組命令可以用來比較兩個檔案內容的差別。 Comm命令 如果想對兩個有序的檔案進行比較,可以使用comm命令。 語法:comm [- 123 ] file1 file2 說明:該命令是對兩個已經排好序的檔案進行比較。其中file1和file2是已排序的檔案。comm讀取這兩個檔案,然後生成三列輸出:僅在file1中出現的行;僅在file2中出現的行;在兩個檔案中都存在的行。如果檔名用“- ”,則表示從標準輸入讀取。 選項1、2或3抑制相應的列顯示。例如comm - 12就只顯示在兩個檔案中都存在的行;comm - 23只顯示在第一個檔案中出現而未在第二個檔案中出現的行;comm - 123則什麼也不顯示。 例如:假設要對檔案myfile1和myfile2進行比較 $ cat myfile1 main( ) { float a,b, i, j ,z ; a=i=10 ; b=j=5 ; z= i + j ; printf(“z=%d
”,z) ; } $ cat myfile2 #include main( ) { float i, j ,z ; i=10 ; j=5 ; z= i + j ; printf(“z=%f
”,z) ; } $ comm - 12 myfile1 myfile2 main( ) { z= i + j ; } 就只顯示檔案myfile1和myfile2中共有的行。 Diff命令 該命令的功能為逐行比較兩個文字檔案,列出其不同之處。它比comm命令完成更復雜的檢查。它對給出的檔案進行系統的檢查,並顯示出兩個檔案中所有不同的行,不要求事先對檔案進行排序。 語法:diff [選項] file1 file2 說明:該命令告訴使用者,為了使兩個檔案file1和file2一致,需要修改它們的哪些行。如果用“- ”表示file1或fiie2,則表示標準輸入。如果file1或file2是目錄,那麼diff將使用該目錄中的同名檔案進行比較。例如: diff /usr/xu mine 把目錄/usr/xu 中名為mine的檔案與當前目錄中的mine檔案進行比較。 通常輸出由下述形式的行組成: n1 a n3,n4 n1,n2 d n3 n1,n2 c n3,n4 這些行類似ed命令把filel轉換成file2。字母(a、d和c)之前的行號(n1,n2)是針對file1的,其後面的行號(n3,n4)是針對file2的。字母a、d和c分別表示附加、刪除和修改操作。 在上述形式的每一行的後面跟隨受到影響的若干行,以“<”打頭的行屬於第一個檔案,以“>”打頭的行屬於第二個檔案。 diff能區別塊和字元裝置檔案以及FIFO(管道檔案),不會把它們與普通檔案進行比較。 如果file1和file2都是目錄,則diff會產生很多資訊。如果一個目錄中只有一個檔案,則產生一條資訊,指出該目錄路徑名和其中的檔名。 diff各選項的含義如下: - b 忽略行尾的空格,而字串中的一個或多個空格符都視為相等。如How are you與How are you被視為相同的字串。 - c 採用上下文輸出格式(提供三行上下文)。 - C n 採用上下文輸出格式(提供n行上下文)。 - e 產生一個合法的ed指令碼作為輸出。 - r 當file1和file2是目錄時,遞迴作用到各檔案和目錄上。 例如,檔案ml.c的內容為(左邊行號是有意加上的,以便前後對照): 1 main( ) { printf(“Hello!\n”); } 5 檔案m2.c的內容為: 1 main() 2 { 3 int n , m ; 4 n= 10 ; 5 printf ( “ % d n ” , m = n * 10); 6 } 輸入命令: $ diff m1.c m2.c 螢幕上顯示: 3,5 c 3,6 printf(“Hello!\n”); } <5 >3 int n,m; >4 n=10 ; >5 printf ( “ % d n ” , m = n * 10); >6 } 表示把檔案m1.c的3至5行改成m2.c的3至6行後,兩個檔案相同。本文由TurboLinux公司提供。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8225414/viewspace-938947/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 循序漸進linux(二)Linux
- 循序漸進學加密加密
- 務實發展,循序漸進
- 循序漸進DIY一個react(二)React
- 循序漸進DIY一個react(四)React
- 循序漸進DIY一個react(三)React
- 循序漸進理解TypeScript型別模式TypeScript型別模式
- 循序漸進DIY一個react(一)React
- Matplotlib學習筆記2 - 循序漸進筆記
- 【Python語法】循序漸進理解閉包Python
- 循序漸進掌握遞迴正規表示式遞迴
- 循序漸進的用js實現一個bind()JS
- 使用C#的後端Web API:循序漸進教程後端WebAPI
- 循序漸進 Redis 分散式鎖(以及何時不用它)Redis分散式
- 自動化響應要循序漸進 不能一蹴而就
- 循序漸進學.Net Core Web Api開發系列【14】:異常處理WebAPI
- 循序漸進學.Net Core Web Api開發系列【4】:前端訪問WebApiWebAPI前端
- 《程式設計的原則》重新發明車輪感悟之循序漸進程式設計
- [翻譯]測試人員成為業務分析師的循序漸進指南
- 循序漸進!開展零信任建設時應做好的16項準備
- 循序漸進學.Net Core Web Api開發系列【9】:常用的資料庫操作WebAPI資料庫
- 循序漸進nginx(二):反向代理、負載均衡、快取服務、靜態資源訪問Nginx負載快取
- 循序漸進VUE+Element 前端應用開發(18)--- 功能點管理及許可權控制Vue前端
- 解密prompt系列34. RLHF之訓練另闢蹊徑:循序漸進 & 青出於藍解密
- 循序漸進體驗玩法和故事,從《八方旅人》談遊戲關卡設計遊戲
- 推薦《循序漸進Linux基礎知識伺服器搭建系統管理效能調優叢集應用》附下載連結Linux伺服器
- WePack —— 助力企業漸進式 DevOps 轉型dev
- vuex 漸進式教程Vue
- 漸進均分性(AEP)
- 循序漸進nginx(三):日誌管理、http限流、https配置,http_rewrite模組,第三方模組安裝,結語NginxHTTP
- vuex 漸進式教程(一)Vue
- 漸進深入理解NginxNginx
- Day08——強制轉換
- 漸進式渲染是什麼?
- Redis 漸進叢集介紹Redis
- Linux(08):網路配置檔案——其它Linux
- Python進階08 異常處理Python
- [譯] 將網站轉換為漸進式 Web 應用程式之簡易教程網站Web
- Promise, Generator, async/await的漸進理解PromiseAI