今天写了个统计某个目录下源代码行数的Shell脚本,如下:
#
!/bin/bash
find . - name *. java > srcFilesPathName
count = $(wc - l srcFilesPathName) # 记录源文件个数
echo "源代文件个数= $count"
while read pathName
do
countAndPath = $(wc - l $pathName )
echo $countAndPath >> t1
done < srcFilesPathName
lineSum = 0 # 总行数计数
while read countAndPath
do
lineCount = `echo "$countAndPath" | awk - F ' ' '{print $1}' ` # 取第一个字段,也就是行数
lineSum = `expr $lineCount + $lineSum `
done < t1
echo "源代码总行数=$lineSum"
rm srcFilesPathName
rm t1
exit 0
find . - name *. java > srcFilesPathName
count = $(wc - l srcFilesPathName) # 记录源文件个数
echo "源代文件个数= $count"
while read pathName
do
countAndPath = $(wc - l $pathName )
echo $countAndPath >> t1
done < srcFilesPathName
lineSum = 0 # 总行数计数
while read countAndPath
do
lineCount = `echo "$countAndPath" | awk - F ' ' '{print $1}' ` # 取第一个字段,也就是行数
lineSum = `expr $lineCount + $lineSum `
done < t1
echo "源代码总行数=$lineSum"
rm srcFilesPathName
rm t1
exit 0
后来师傅给了更简单的解答,一行命令就够了:-)
find
-
name
'*.java'
-
type f
-
exec
cat {}
;
|
wc
-
l
呵呵,Shell脚本真是博大精深啊!
:-)