0

awkCSV ファイルを解析し、日付を含む 1 つの列とアクティビティ タイプを含む別の列を比較し、特定のアクティビティの数を出力するスクリプトを作成しています。

私が書いたコードは次のとおりです。

NOW=$(date --date="5 days ago" +"%Y%m%d")
awk -F "," -v mydate=$NOW '{
    var_1=1;
    var_2=1;} {
    if ( substr($8,2,8) == mydate ) {
                if ( $6 == 1001 ) {
                    var_1++;
                }
                else if ( $6 == 1003 ) {
                    var_2++;
                }
    }
    print var_1 var_2
}' *.csv

私が得る出力は

11
11
11
11
11
11

この問題は、私が定義した方法と関係があると思いvar_1ますvar_2。それらは再初期化されるか何かです。

var_1また、 andの最終値のみを出力したいvar_2。現時点では、の繰り返しごとに出力されますawk

何かアドバイス?

4

1 に答える 1