linux wc 命令详解

wc命令

  wc命令的功能为统计指定文件中的字节数、字数、行数, 并将统计结果显示输出。

  语法:wc [选项] 文件…

  说明:该命令统计给定文件中的字节数、字数、行数。如果没有给出文件名,则从标准输入读取。wc同时也给出所有指定文件的总统计数。字是由空格字符区分开的最大字符串。

  该命令各选项含义如下:

        - c 统计字节数。

     - l 统计行数。

    - w 统计字数。

   这些选项可以组合使用。

    输出列的顺序和数目不受选项的顺序和数目的影响。

      总是按下述顺序显示并且每项最多一列。

      行数、字数、字节数、文件名

      如果命令行中没有文件名,则输出中不出现文件名。

  例如:

  $ wc - lcw file1 file2

  4 33 file1

  7 52 file2

    11 11 85 total

   省略任选项-lcw,wc命令的执行结果与上面一样。 

 

----------------------------------------------------------------------------------------------------------------------------------------------

 

指令名稱:
wc(1) - 計算檔案的行、字與位元數
語法:
wc [OPTION]... [FILE]...
說明:
顯示指定文件的 行,字(word) 與 位元(byte)的數目總計。如未指定文件或指定的檔案名為"-"符號時,指令將改為計算標準輸入的資料。
選項:
-c, --bytes
顯示位元數統計
-m, --chars
顯示字母數統計
-l, --lines
顯示行數統計
-L, --max-line-length
顯示檔案裡最長該行的長度資訊
-w, --words
顯示單字數(word)統計
--help
顯示程式用法資訊
--version
顯示程式本身的版本資訊
如未指定任何選項,指令會依序輸出 行, 字, 位元 的統計資訊。

 

實例說明:
# ls exp-*
exp-01  exp-02  exp-03
# wc exp-*
    
      9       5      44 exp-01
    338     212    2156 exp-02
   1478    7364   52037 exp-03
   1825    7581   54237 總計
# wc -L exp-*
     32 exp-01
     23 exp-02
     89 exp-03
     89 總計
 

這個指令有一點要注意的是,他的輸出格式的先後次序是固定不變的,

# wc -lw exp*
      9       5 exp-01
    338     212 exp-02
   1478    7364 exp-03
   1825    7581 總計
# wc -wl exp*
      9       5 exp-01
    338     212 exp-02
   1478    7364 exp-03
   1825    7581 總計
 

由於指令本身不支援欄位說明的顯示,所以在選項組合時,很難辨識。但他顯示的先後次序永遠都是"行數"、"字數"、"位元數"、然後才是"最長長度"

wc 指令目前也支援對中文檔案的計算。但有兩個地方會出問題

1. 關於"字 - word"的計算,英文單字與單字間以 space 字元區隔,此點為程式計算字數的依據,但中文通常是緊連在一起沒有空格的,所以程式所設計的計算方式不適用於中文。

2. 中文是形意字,沒有字母。一個中文字的長度相當於兩個英文字母的長度,所以 -m 選項也不適用。

這篇就簡單地到這裡。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值