我在一個目錄中有文件;他們使用YYYY_MM_DD命名爲:將文件和管道組到awk命令
-rw-r--r-- 1 root root 497186 Apr 21 13:17 2012_03_25
-rw-r--r-- 1 root root 490558 Apr 21 13:17 2012_03_26
-rw-r--r-- 1 root root 488797 Apr 21 13:17 2012_03_27
-rw-r--r-- 1 root root 316290 Apr 21 13:17 2012_03_28
-rw-r--r-- 1 root root 490081 Apr 21 13:17 2012_03_29
-rw-r--r-- 1 root root 486621 Apr 21 13:17 2012_03_30
-rw-r--r-- 1 root root 490904 Apr 21 13:17 2012_03_31
-rw-r--r-- 1 root root 491788 Apr 21 13:17 2012_04_01
-rw-r--r-- 1 root root 488630 Apr 21 13:17 2012_04_02
在文件中的第一列是一個數字,我使用下面的命令awk
採取的是第一列的平均值。
awk -F, '{ x += $1 } END { print x/NR }' MyFile
使用相同的命令,我可以將兩個文件傳遞給awk以獲得兩個文件的總體平均值。
awk -F, '{ x += $1 } END { print x/NR }' File1 File2
我想要做的是...
我想在我的目錄中的所有文件,以及它們分組每月,然後通過所有文件當月awk命令。
那麼按照同樣的數據,有7檔在三月,我希望所有的7個文件要傳遞給我的awk
命令是這樣的:
awk -F, '{ x += $1 } END { print x/NR }' File1 File2 File3 File4 File5 File6 File7
然後同樣地,對於四月份的集合。
你將如何決定哪些個月應進行處理?它會是一個類似'monthly_stats 2012-03 2012-04'的命令調用嗎?或者您是否需要掃描目錄中的所有文件,以查看哪些月份代表了所有文件? – 2012-04-21 20:43:33