在命令列工作時,有時您可能想要知道一個檔案中的單詞數量、位元組數、甚至換行數量。如果您正在尋找這樣做的工具,您會很高興地知道,在 Linux 中,存在一個命令列實用程式,它被稱為 wc
,它為您完成所有這些工作。在本文中,我們將通過簡單易懂的例子來討論這個工具。
但是在我們開始之前,值得一提的是,本教程中提供的所有示例都在 Ubuntu 16.04 上進行了測試。
Linux wc 命令
wc
命令列印每個輸入檔案的新行、單詞和位元組數。以下是該命令列工具的語法:
1 2 |
wc [OPTION]... [FILE]... |
以下是 wc
的 man 文件的解釋:
1 2 |
為每個檔案列印新行、單詞和位元組數,如果指定多於一個檔案,也列出總的行數。單詞是由空格分隔的非零長度的字元序列。如果沒有指定檔案,或當檔案為 `-`,則讀取標準輸入。 |
下面的 Q&A 樣式的示例將會讓您更好地瞭解 wc
命令的基本用法。
注意:在所有示例中我們將使用一個名為 file.txt
的檔案作為輸入檔案。以下是該檔案包含的內容:
1 2 3 4 5 |
hi hello how are you thanks. |
Q1. 如何列印位元組數
使用 -c
命令選項列印位元組數.
1 2 |
wc -c file.txt |
下面是這個命令在我們的系統上產生的輸出:
檔案包含 29 個位元組。
Q2. 如何列印字元數
要列印字元數,請使用 -m
命令列選項。
1 2 |
wc -m file.txt |
下面是這個命令在我們的系統上產生的輸出:
檔案包含 29 個字元。
Q3. 如何列印換行數
使用 -l
命令選項來列印檔案中的新行數:
1 2 |
wc -l file.txt |
這裡是我們的例子的輸出:
Q4. 如何列印單詞數
要列印檔案中的單詞數量,請使用 -w
命令選項。
1 2 |
wc -w file.txt |
在我們的例子中命令的輸出如下:
這顯示檔案中有 6 個單詞。
Q5. 如何列印最長行的顯示寬度或長度
如果您想要列印輸入檔案中最長行的長度,請使用 -l
命令列選項。
1 2 |
wc -L file.txt |
下面是在我們的案例中命令產生的結果:
所以檔案中最長的行長度是 11。
Q6. 如何從檔案讀取輸入檔名
如果您有多個檔名,並且您希望 wc
從一個檔案中讀取它們,那麼使用-files0-from
選項。
1 2 |
wc --files0-from=names.txt |
如你所見 wc
命令,在這個例子中,輸出了檔案 file.txt
的行、單詞和字元計數。檔名為 file.txt
的檔案在 name.txt
檔案中提及。值得一提的是,要成功地使用這個選項,檔案中的檔名應該用 NUL 終止——您可以通過鍵入Ctrl + v
然後按 Ctrl + Shift + @
來生成這個字元。
結論
正如您所認同的一樣,從理解和使用目的來看, wc
是一個簡單的命令。我們已經介紹了幾乎所有的命令列選項,所以一旦你練習了我們這裡介紹的內容,您就可以隨時在日常工作中使用該工具了。想了解更多關於 wc
的資訊,請參考它的 man 文件。