I have programmed a little bash program which counts the source lines of a forlder. It skips new lines and php comments (/* */) when counting.
Code
#!/bin/bash
# SLOC (Source Lines of Code)
# This application is used to count the source lines of code
# of a project
# usage: sloc /home/pron/myphpproject
# http://www.cms4site.ru/utility.php?utility=cocomoii
# awk usage
# http://www.liamdelahunty.com/tips/linux_ls_awk_totals.php
# sed usage
# http://www.gnulamp.com/sed.html
# http://www.grymoire.com/Unix/
# if $1 parameter is a folder,
# will show recursively the lines that have the files
# but will exclude lines that contents any special character:
# * : initially used to delete comments like /* or */
# ^$ : ^ means beginning of line and $ means end of line,
# so it deletes lines when only appears '/n'
function count_lines {
if [ -d $1 ]
then
for j in $1/*
do
if [ -f $j ]
then
sed -e '/\/\*/ d' -e '/\*\// d' -e '/^$/ d' $j | wc -l
fi
if [ -x $j ]
then
$0 $j
fi
done
fi
}
count_lines $1 | awk '{ SUM +=$1 } END { print SUM} '
No comments:
Post a Comment