AWKのレコード計算に問題があります。

AWKのレコード計算に問題があります。

こんにちは、長さに問題があるレコード数を数えるawk式があります。問題は、エラーがない場合、私のカウントがゼロではないことです。

パスワード

err_count=$(
    awk -v m=1 -v p=5 -v count=0 '
        {
            c=substr($0,m,p)
            sub(" +$", "", c)
            if ( (length(c) > p) && (NR > 1) ) {
                printf "%s:%s:%s\n", FILENAME, FNR, $0 > "/dev/stderr"
                count++
            }
        }
        END {
            print count
        }
    ' /test/data/poc/BNC_fixedwidth.txt
)

入力ファイル(固定幅)

header
10027  20033t  [email protected]   19519  11/18/2021 12:06:10.260 PM BNC HardB 5 User Unk 125

error_count 変数は常にゼロではなく空白を提供します。誰でもライトを通して見ることができます

ベストアンサー1

コードが実行された後は、このようなことを行いますが、echo "$error_count"実際に実行したい変数はありませんecho "$err_count"

おすすめ記事