web-dev-qa-db-ja.com

sedを含む行を削除し、特別な正規表現に一致する

私はいくつかのオプションの特殊文字で始まり、その後にblubbが続くすべての行を削除しようとします:

それが私が一致させたい行です:

#blubb
*blubb
-blubb
blubb

それはそれを行うべきですが、動作しません:(

sed "/^.?blubb$/d" -i special.conf  
sed "/^[#*-]?blubb$/d" -i special.conf  

誰かが正しい解決策を持っていますか?

18
Thomas

次のsedコマンドを使用します。

sed -i.old '/^[#*-]\{0,1\}blubb/d' special.conf

OR

sed -i.old -E '/^[#*-]?blubb/d' special.conf

OR

sed -i.old -r '/^[#*-]?blubb/d' special.conf
24
anubhava