特定の列の長さ条件を使用した行の印刷

特定の列の長さ条件を使用した行の印刷

列26の項目の長さが10でなければならない非常に大きなcsvファイルを解析しています。項目がない場合もあることがわかりますが(大丈夫です)、項目の長さが10未満または10より大きい場合もありますが、これは間違っています。私はナビゲートするためにこれらの行のいくつかを印刷したいと思います。

私の試みは次のとおりです

awk 'length($26) < 10' my_file.csv | sort -u | cut -d ',' -f 26 | head

しかし、これは私が望む結果を返しません。代わりに、列26の長さが実際には10などの一部の行を返します。私は何が間違っていましたか?

ベストアンサー1

awk -F, 'length($26) != 10 { print }' /path/to/input > bad_field_length.txt

おすすめ記事