linux下源码行数统计脚本
(非递归)
#!/bin/bash
w=0
for s in $( find . -name *.[hc] )
do
t=$( wc -l $s | awk '{print $1}' )
let "w=w+t"
done
echo $w
(递归) 
#!/bin/bash
f()
{
w=0
for s in $( ls $1 )
do
if [ -f $1 ]
then
let "w+=$(wc -l <$1)"
break
fi
st=${s%/*}
if [ -d $1/$st ]
then
let "w+=$(f $1/$st)"
else
case $st in
*.c|*.h)
let "w+=$(wc -l <"$1/$st")"
;;
esac
fi
done
echo $w
}
if [ -z "$1" ]
then
echo "Uasge:count_code path!"
exit 1
else
f $1
fi
