ファイルがあります(以下の例)。一部の行には5つのフィールドがあり、5番目のフィールドは数字です。ただし、ファイルの数行には4つのフィールドしかありません。
4つのフィールドの内容のみを含む行をどのように削除できますか?列ごとに並べ替えられません。
delay from threshold/temp/atp/CK rx/tx/sx/C14/CLR/DQ 5.0
delay from threshold2 rx/C10/CLR 7.0
delay to threshold10 rx10 3.0
delay from min/max/values/atp tx/rx/mx/T13/CLR
delay to min5/atp2 tx/mx/P11/CTR
上記の例では、4行目と5行目を削除したいと思います。
私は試しましたが役に立ちawk -F\| '$5~/\w/' file
ませんでした。
ベストアンサー1
awk '$5~/\w/'
私のために動作します。\w
5番目の列が正規表現akaに一致するすべての行を印刷します[a-zA-Z0-9_]
。このオプションを使用して、-F
正しい区切り文字を指定したことを確認します。
awk 'NF>4'
あなたの意図をより明確に表現してください。 4つ以上のフィールドを含むすべての行を印刷します。