- 論壇徽章:
- 4
|
如題。
目的是把每天新接收到的目錄/A下的文件的行數(shù)統(tǒng)計出來,
把結果累加到目錄/countfile/相對應的文件中。
目錄/countfile/下的文件中只記錄相對應目錄A下的文件的行數(shù)。
20150923,目錄A下新接收到的數(shù)據(jù)
$ls -l /A/*
a1.txt
a2.txt
$cat a1.txt
header
111111111
222222222
footber
$cat a2.txt
header
333333333
444444444
555555555
footer
-------------------
目錄/countfile下對20150922下文件的統(tǒng)計結果。
$ls -l /countfile/*
a1.txt
a2.txt
$cat a1.txt
5
$cat a2.txt
6
--------------------
程序如下,執(zhí)行之后,目錄/countfile下的文件行數(shù)變?yōu)?br />
$cat a1.txt
7
$cat a2.txt
9
-----------------------------------------
寫了一個程序,執(zhí)行的時候出問題,請高手指點程序哪塊有問題?
是否有其它更好的辦法實現(xiàn)?
-----------------------------------------
for id in $(ls -l /A/*);
do
#如果文件不存在,輸出0件。
if [ ! -f "id" ]; then
$sum_count=0
echo -e "$(`expr $sum_count`)" > /count_file/$id
else
#更新到20150922為止,目錄/count_file/下文件的件數(shù)。
$sum_count=`cat /count_file/$id`
#統(tǒng)計20150923新接收到的文件件數(shù)(不包含header和footer)
$record_count=`expr $(wc -l < /A/$id) -2`
echo -e "$(`expr $sum_count + $record_count`)" > /countfile/$id
fi
done;
----------------------------------------- |
|