Linux 下如何使用 wc 命令


wc 是 Word Count 的縮寫,顧名思義,它主要是用來計數的命令

wc 命令統計單詞數時,單詞之間是以一個或多個空格、制表符、換行符分隔開的。統計字符數時,字母、數字、以及空格、制表符和換行符都計算在內。統計行數時,僅當一行以換行符結尾時才進行計數

語法

wc [OPTION]... [FILE]...

統計終端輸入

語法中的 [OPTION] 以及 [FILE] 是可選的,也就是說在終端上輸入 wc 命令並回車,這時候統計的是從鍵盤輸入終端中的字符,再次按回車鍵,然后按 Ctrl + D 會輸出統計的結果,具體如下圖所示:

當輸入第二行的 ab之后按回車鍵,同時按 Ctrl + D就會輸出統計的結果,結果按列分別表示: 2行、4個單詞、12個字節

統計行數

-l 選項可以獲得指定文件內容的行數,每行以回車鍵作為結尾進行統計

[root@ecs-centos-7 tt]# cat a.txt 
ab 112
qwe rty uio
0987
[root@ecs-centos-7 tt]# wc -l a.txt 
3 a.txt

上面例子中,a.txt 總共有3行,輸出的結果中第一列顯示總行數,第二列顯示統計的文件名

統計字節數

下面的例子中, 統計 c.txt 的字節數和 ls -lh 輸出的字節數相同

[root@ecs-centos-7 tt]# ls -lh c.txt 
-rw-r--r-- 1 root root 7 Aug  8 20:24 c.txt
[root@ecs-centos-7 tt]# wc -c c.txt 
7 c.txt

統計字符數

通過 -m 選項可以統計文件的字符數,下面例子中,b.txt 文件內容只有一個漢字,所以輸出的字符數是2(一個漢字算兩個字符)

[root@ecs-centos-7 tt]# cat b.txt 
你
[root@ecs-centos-7 tt]# wc -m b.txt 
2 b.txt

統計最長一行的字符數

-L 選項可以統計文件內容中,所有行中字符數最多那一行的字符數

[root@ecs-centos-7 tt]# cat a.txt 
ab 112
qwe rty uio
0987
[root@ecs-centos-7 tt]# wc -L a.txt 
11 a.txt

上面的例子中, a.txt 字符數最多的是第二行,它總共有11個字符(空格也當作一個字符)

統計單詞數

統計單詞數時,是以一個或多個空格、制表符、換行符作為分隔符的,也就是說,只要連續的字符之間出現空格、制表符、換行符中任一個字符,都當做兩個單詞計數

[root@ecs-centos-7 tt]# cat a.txt 
ab 112
qwe rty uio
0987
[root@ecs-centos-7 tt]# wc -w a.txt 
6 a.txt

上面的例子中,a.txt 總共3行,第一行有兩個單詞,第二行有三個讀單詞,第三行有一個單詞,總共是六個單詞

統計多個文件

除了指定單個文件以外,還可以指定多個文件,每個文件之間以空格隔開,結果會分別顯示每個文件的統計信息以及所有文件的統計信息

[root@ecs-centos-7 tt]# cat a.txt 
ab 112
qwe rty uio
0987
[root@ecs-centos-7 tt]# cat b.txt 
你
[root@ecs-centos-7 tt]# wc -w a.txt b.txt 
 6 a.txt
 1 b.txt
 7 total

上面例子中,統計 a.txt 和 b.txt 中的單詞數,結果是按照統計文件的順序顯示的,第一行是 a.txt 的單詞數,第二行是 b.txt 的單詞數,第三行是 a.txt 和 b.txt 單詞總和

統計目錄中對象數

通過和 ls命令組合使用可以用於統計指定目錄中的對象(文件,鏈接和目錄),下面的例子中,wc -l 命令計算ls命令結果的行數,具體的如下所示:

[root@ecs-centos-7 tt]# ls
a.txt  b.txt  c.txt  tmp
[root@ecs-centos-7 tt]# ls | wc -l
4


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM