統計文件行數(單個文件):
wc -l file
例如:
homer@ubuntu:~/workspace/android/game$ wc -l LGameAndroid2DActivity.java
906 LGameAndroid2DActivity.java
統計目錄所有文件行數(全部目錄):
find . -name *.java | xargs wc -l
例如:
homer@ubuntu:~/workspace/android$ find . -name *.java | xargs wc -l
817 ./game/core/LHandler.java
140 ./game/core/LFlicker.java
...
515 ./game/utils/collection/ArrayMap.java
162 ./game/utils/CollisionUtils.java
178 ./game/utils/NumberUtils.java
68753 total
統計目錄並按行數排序(按行大小排序):
find . -name *.java | xargs wc -l | sort -n
homer@ubuntu:~/workspace/android$ find . -name *.java | xargs wc -l | sort -n
25 ./game/action/sprite/Collidable.java
26 ./game/core/graphics/component/CollisionQuery.java
27 ./game/core/graphics/filter/ImageFilter.java
28 ./game/LMode.java
...
1467 ./game/core/geom/Path2D.java
1919 ./game/core/graphics/Screen.java
2417 ./game/core/graphics/device/LGraphics.java
3050 ./game/core/geom/AffineTransform.java
68753 total
統計目錄並按文件名排序:
find . -name *.java | xargs wc -l | sort -k2
homer@ubuntu:~/workspace/android$ find . -name *.java | xargs wc -l | sort -k2
210 ./game/action/ActionControl.java
116 ./game/action/ActionEvent.java
34 ./game/action/ActionListener.java
....
178 ./game/utils/NumberUtils.java
342 ./game/utils/RecordStoreUtils.java
58 ./game/utils/ScreenUtils.java
650 ./game/utils/StringUtils.java
68753 total
------------------------------------------------------------------------------------------------------------------------------------------
語法:wc [選項] 文件…
說明:該命令統計給定文件中的字節數、字數、行數。如果沒有給出文件名,則從標準輸入讀取。wc同時也給出所有指定文件的總統計數。字是由空格字符區分開的最大字符串。
該命令各選項含義如下:
- c 統計字節數。
- l 統計行數。
- w 統計字數。
這些選項可以組合使用。
輸出列的順序和數目不受選項的順序和數目的影響。
總是按下述順序顯示並且每項最多一列。
行數、字數、字節數、文件名
如果命令行中沒有文件名,則輸出中不出現文件名。
例如:
$ wc - lcw file1 file2
4 33 file1
7 52 file2
11 11 85 total
舉例分析:
1.統計demo目錄下,js文件數量:
2.統計demo目錄下所有js文件代碼行數:
3.統計demo目錄下所有js文件代碼行數,過濾了空行: