Linux 使用 wc 指令計算字數、行數教學與範例
wc 是一個 Linux 的基本指令,可用來計算檔案內容的字數、行數、位元組數等資訊,雖然功能很簡單,但是卻很實用,以下是這個指令的使用方式與範例。
基本用法
wc
可用來計算指定檔案內容的換行數(newline)、字數(word)與位元組數(byte),例如計算 /etc/motd 與 /etc/os-release 這兩個檔案的字數統計:
wc /etc/motd /etc/os-release
7 40 286 /etc/motd
9 14 276 /etc/os-release
16 54 562 total
wc
會對每一個指定的檔案輸出三個數值,分別代表換行數、字數與字元數,以這個例子來說,輸出的第一行代表 /etc/motd 這個檔案內容總共有 7 行、字數為 40,總共的位元組數則為 286,其餘以此類推。
- 從標準輸入讀取資料
wc 跟一般的 Linux 指令工具一樣,亦可從標準輸入讀取資料:
cat /etc/motd | wc
7 40 286
- 只計算換行數
若只要計算換行數,可以加上 -l
參數:
wc -l /etc/motd
7 /etc/motd
- 只計算字數
若只要計算字數,可以加上 -w
參數:
wc -w /etc/motd
40 /etc/motd
- 只計算位元組數
若只要計算位元組數,可以加上 -c
參數:
wc -c /etc/motd
286 /etc/motd
- 只計算字元數
若只要計算字元數(character),可以加上 -m
參數:
wc -m /etc/motd
286 /etc/motd
對於普通英文的資料而言,位元組與字元的數量會是相同的,但如果有中文字的話,就會有些不同:
echo -n "中文" | wc -m
2
echo -n "中文" | wc -c
6
- 計算最長行的長度
如果想要找出資料中最長那一行的長度,可以加上 -L
參數:
wc -L /etc/motd
73 /etc/motd
實用範例
這行指令可以用來計算在目前目錄中,所有 Python 指令稿(*.py
)的數量:
# 計算目前目錄下,Python 指令稿的數量
ls *.py | wc -l