sed コマンド スラッシュ以外(を含まない)をしたければ[^/]

たとえば、

2021/seven/12

みたいな文字列があったときに、

スラッシュ以外を「o」に変えたいとする。(期待する結果:oooo/ooooo/oo)

スラッシュはデフォルトではsedのデリミタ(囲い文字)なのでエスケープしないといけないと思い、

sed 's/[^\/]/o/g'

とすると、うまく動かない。

sed 's/[^/]/o/g'

で良い。

スラッシュをエスケープする必要なかった。

コメント

タイトルとURLをコピーしました