nからmまでの空の列を持つ行を取得する方法

nからmまでの空の列を持つ行を取得する方法

次のCSVファイルがあります。

aaa,vvv,,,,
bbb,qqq,,,vvv,
ccc,www,iii,,,kkk
ddd,rrr,,,lll,
eee,ttt,ooo,sss,ggg,jjj
fff,yyy,ppp,,,

n〜m番目の列が空の行を取得したいと思います。 (この場合:3〜4番目の列が空の行を取得します。)

次に、次のように出力を取得します。

bbb,qqq,,,vvv,
ddd,rrr,,,lll,

実際には、awkを使用して特定の範囲列が空の行を取得したいと思います。

awk -F, '$n-$m=="" {print}' file.csv
awk -F, '$3-$4=="" {print}' file.csv

ベストアンサー1

一方通行:

awk -F, -v st=3 -v end=4 '{for(i=st;i<=end;i++){if($i){next;}}}1' file

おすすめ記事