Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
特定の文字列セットを含む行を削除したいファイルが多数あります。
特定の1つの文字列を含む行のみを削除したい場合にこれを行うために使用されることは知っsed -i '/string1/d'ていますが、行全体で一致させてそれらの行を削除したい一連の文字列がある場合に、これを行うためのオプションは何かを知りたかったのです。
sed -i '/string1/d'
これは可能ですsed -i '/string1|string2/d' file.txtか?
sed -i '/string1|string2/d' file.txt
エスケープする必要があるのは次の|とおりです。
|
sed -i '/string1\|string2/d' file.txt
次のこともできることに注意してください。
sed -i -e '/string1/d' -e '/string2/d' file.txt
この特定のケースでは、次のことができます。
sed -i '/string[12]/d' file.txt
(最後の例は、要件に合わせてパターンを操作する方法が多数あることを示すためのものです。)