-
LINUX下统计代码行数
我们编程时常常想统计一下自己写过多少行代码了,这时候该怎么办呢?
虽然Vim等编辑器中有代码行数显示,但是不能一个个打开然后加起来吧?
这个时候需要用到wc这个工具,呵呵,别看名字不怎么样,功能可是很强大的哦。
用法: www.2cto.com
当前目录下:
wc -l *.c *.h
当前目录及子目录:
find . -name *.c |xargs wc -l
find . -name *.cpp | xargs wc -l
find . -name *.h |xargs wc -l
统计文件行数(单个文件): www.2cto.com
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
www.2cto.com
统计目录并按行数排序(按行大小排序):
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
www.2cto.com
统计目录并按行数排序(按行文件名排序):
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