sedでダブルクォーテーション・シングルクォーテーションの置換・削除を行う
Pocket

sedでダブルクォーテーションやシングルクォーテーションの置換・削除を行う場合、条件を囲む記号をどちらでやるかにもよるが、基本的には以下のようにエスケープしてやればよい。

●「”(ダブルクォーテーション)」で囲んでいる場合

sed "s/\"/置換後の文字列/g"
sed "s/'/置換後の文字列/g"
blacknon@BS-PUB-UBUNTU-01:/tmp$ echo \"aaaa\" | sed "s/\"/1/g"
1aaaa1
blacknon@BS-PUB-UBUNTU-01:/tmp$ echo \'aaaa\' | sed "s/'/1/g"
1aaaa1
Sponsored Links

●「'(シングルクォーテーション)」で囲んでいる場合

sed 's/"/置換後の文字列/g'
sed 's/'\''/置換後の文字列/g'
blacknon@BS-PUB-UBUNTU-01:/tmp$ echo \"aaaa\" | sed 's/"/1/g'
1aaaa1
blacknon@BS-PUB-UBUNTU-01:/tmp$ echo \'aaaa\' | sed 's/'\''/1/g'
1aaaa1

 

Pocket

Written by blacknon

インフラ系のSE。一時期はプログラマ。 仮想化とオープンソースに興味あり。一日中寝てたい今日このごろ。 スペインとかで働きたいなぁ…(シエスタがあるので)

Leave a Comment

メールアドレスが公開されることはありません。