私はいくつかの異なるtxtファイルを一覧表示するtxtファイルを扱っています。そのうちの多くは私が誤ってコピーしました。
私はmacOSを使用しているので、重複ファイルを一覧表示する行はすべてパターンで終わります(NUMBER).txt
。このパターンが含まれていないすべての行を削除したいと思います。
正規表現をテストするためにこのコマンドを考えましたが、次の終わりの行も印刷するのでうまくいきません(WORD).txt
。
sed '/\(\d\)\.txt$|\(\d\d\)\.txt$|\(\d\d\d\)\.txt$/p' file.txt
何か欠けていることがわかりますが、何かはわかりません...助けてくれてありがとう!
答え1
これは働きます:
sed -E -n '/.*[0-9]+\.txt$/p' file.txt
見たら情報セット、段落2.1で設定を使用する方法のいくつかの例を見つけることができますsed -n '...p'
。
上記のコマンドは標準出力として印刷されます。-i
ファイルをその場で変更するには、このオプションを追加してください。