Ubuntu 12.04.1 LTSのbashシェルでこのコマンドを実行しています。私は一度に一気に、[
そして両方の]
キャラクターを削除しようとしています。つまり、二度目のsedにパイプする必要はありません。
正規表現では角かっこが特別な意味を持っていることを知っているので、バックスラッシュを前に付けてエスケープします。私が期待していた結果は単なる文字列です123
が、角括弧が残っているので、理由を知りたいです!
~$ echo '[123]' | sed 's/[\[\]]//'
[123]
str='[123]'; str1=${str/\[/}; str2=${str1/\]}; echo $str2