タスクとしては以下のようなテキストファイル
Hello![ My name is [] Nice [to] meet you!
をsedコマンドを使って
Hello My name is Nice to meet you
と記号を全て削除したいです。(MacOSです)
sed -e "s/[[]!]//g" test.txt
以上のコマンドを試しましたが、
-bash: !]//g": event not found
と出てうまくいきません。
"?"単体だと以下のようにうまく行きました
$ sed -e "s/[!]//g" test.txt Hello[ My name is [] Nice [to] meet you
また、
$ sed -e "s/[[]//g" test.txt Hello! My name is ] Nice to] meet you!
"["のみ削除はうまく動作します
$ sed -e "s/[]]//g" test.txt # "]"のみ削除 Hello![ My name is [ Nice [to meet you!
"]"とエスケープしなければいけないはずが、"]"のみ削除もなぜか?うまく動作します。
ちなみに"]"だと以下のようにうまく行きません
$ sed -e "s/[]]//g" test.txt Hello![ My name is [] Nice [to] meet you!
色々試しまたがうまく動作する方法がわからない状態です。
ご教授よろしくお願いします。

回答5件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。