カンマ区切りフィールドの管理

カンマ区切りフィールドの管理

テキストファイルには、次の形式のビッグデータがあります。

x, xx, xxx, xxxx, , , ,
x, xx, , xxxx, xxxx,

だから、ファイルからカンマの後のフィールド番号3が空のすべての行を削除したいと思います。

結果は次のとおりです。

x, xx, xxx, xxxx, , , ,

だから何をしますか?

ベストアンサー1

GNUの使用awk:

$ awk -F' *, *' '$3' file
x, xx, xxx, xxxx, , , ,  

-Fフィールド区切り文字を正規表現␣*,␣*(スペース、アスタリスク、コンマ、スペース、アスタリスク)に設定しました。この式は、ゼロ個以上のスペースで囲まれたコンマと一致します。

実際のawkスクリプトは、$33番目のフィールドが空でない場合、その行が印刷されることを意味します。

おすすめ記事