次の列が複数ある文書があります。
,Flag2,,Flag4,Flag5,,,,,Flag10,Flag11,Flag12,Flag13
awkを使用してフィールドの総数と区切り文字を確認すると、,
結果は次のようになります。
Flag10のフィールド番号を取得するには、結果は次のようになります。 10
awkを使ってこれを行うにはどうすればよいですか?
ベストアンサー1
以下のようにすればいいです。
awk -F, '{for(i=1;i<=NF;i++)if($i=="Flag10")print i}' file
例:
$ echo ',Flag2,,Flag4,Flag5,,,,,Flag10,Flag11,Flag12,Flag13' | awk -F, '{for(i=1;i<=NF;i++)if($i=="Flag10")print i}'
10