-
Notifications
You must be signed in to change notification settings - Fork 1
/
file_report.sh
executable file
·68 lines (52 loc) · 2.21 KB
/
file_report.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#! /bin/bash
function sum(){
total=0
for count in $1
do
total=$((total + count))
done
echo ${total}
}
# Number of src files
num_of_frontend_js_files=`ls ./public/js/*.js | wc -l`
num_of_backend_js_files=`ls ./src/*/*.js ./src/*.js | wc -l`
num_of_html_files=`ls ./resources/*.html ./public/*.html | wc -l`
num_of_css_files=`ls ./public/css/*.css | wc -l`
num_of_shell_files=`ls ./bin/*.sh | wc -l`
count_of_files="${num_of_frontend_js_files} ${num_of_backend_js_files} ${num_of_html_files} ${num_of_css_files} ${num_of_shell_files}"
total_src_files=`sum "${count_of_files}"`
# Number of lines of src code
num_of_frontend_js_lines=`cat ./public/js/*.js | wc -l`
num_of_backend_js_lines=`cat ./src/*/*.js ./src/*.js | wc -l`
num_of_html_lines=`cat ./resources/*.html ./public/*.html | wc -l`
num_of_css_lines=`cat public/css/*.css | wc -l`
num_of_shell_lines=`cat ./bin/*.sh | wc -l`
count_of_src_lines="${num_of_frontend_js_lines} ${num_of_backend_js_lines} ${num_of_html_lines} ${num_of_css_lines} ${num_of_shell_lines}"
total_lines_of_src_code=`sum "${count_of_src_lines}"`
# Test Code
num_of_test_js_files=`ls ./test/*.js ./test/*/*.js | wc -l`
num_of_test_js_lines=`cat ./test/*.js ./test/*/*.js | wc -l`
# Report
echo -e "\n-----SOURCE CODE-----"
echo -e "\n--Number of Files--"
echo -e "Javascript (Front-End):"${num_of_frontend_js_files}
echo -e "Javascript (Back-End):"${num_of_backend_js_files}
echo -e "HTML:"${num_of_html_files}
echo -e "CSS:"${num_of_css_files}
echo -e "Shell:"${num_of_shell_files}
echo -e "Total:"${total_src_files}
echo -e "\n--Number of Lines of Code--"
echo -e "Javascript (Front-End):"${num_of_frontend_js_lines}
echo -e "Javascript (Back-End):"${num_of_backend_js_lines}
echo -e "HTML:"${num_of_html_lines}
echo -e "CSS:"${num_of_css_lines}
echo -e "Shell:"${num_of_shell_lines}
echo -e "Total:"${total_lines_of_src_code}
echo -e "\n-----TEST CODE-----"
echo -e "\n--Number of Files--"
echo -e "Javascript:"${num_of_test_js_files}
echo -e "\n--Number of Lines of Code--"
echo -e "Javascript:"${num_of_test_js_lines}
echo -e "\n-----TOTAL-----"
echo -e "Total files:" $((total_src_files + num_of_test_js_files))
echo -e "Total Lines of Code:" $((total_lines_of_src_code + num_of_test_js_lines))