基本的な質問ならすみません。私はLinuxを頻繁に使用しませんが、フィルタリングしたい13GBファイルがあります。
123個の列がありますが、.
75列にaのみの行を削除したいと思います。
私はこれを行う方法を研究してきましたが、これまでは次のことを行いました。
awk '$75 !~/./ {print $0}' oldfile.txt > newfile.txt
私がしっかりしているのか?実行すると空のファイルが出力されます。
答え1
努力する
awk '$75 != "." ' oldfile.txt > newfile.txt
これは75列の正確な点と一致します。
あなたは何をしましたか?
awk '$75 !~/./ {print $0}'
任意の文字とは異なる文字に対して列75を一致させようとします(正規表現一致.
)。
より具体的に
awk '$75 ~ /./ '
75列に1つ以上の文字を持つすべての行(または75以上の列がある場合はすべての行)と一致します。