LinuxコマンドラインやBashにおいて、sedでシングルクォーテーションの中でシングルクォーテーションを置換する方法について紹介します。
$ echo \'aaaa\' | sed 's/'\''/1/g'
1aaaa1
理屈はよくわからないが、シングルクォーテーションを置換したい場合は、\'
などではなく、
'\''
としてやる。
わかりやすく文字列に置き換えると、[シングルクォーテーション][バックスラッシュ][シングルクォーテーション][シングルクォーテーション]
だ。
これが面倒だからといってシングルクォーテーションではなくダブルクォーテーションで囲んでやることもできるが、それはそれで別問題が発生するのでやめたほうがいい。