bashなどのshellでシングルクオートで囲まれた中でシングルクオートをエスケープする方法は残念ながらない。たとえば、 ssh host02 'ssh host03 \'ls -l\' 'みたいなことはできない。 しかし、クオートを一旦閉じてから、シングルクオートをバックスラッシュでエスケープして入力しその後クオートを再開することで、そのようなことが実現できるようだ。 ssh host02 'ssh host03 '\''ls -l'\'' 'すなわち、\'ではなく、'\''ということだ。 おまけ: シングルクオートを'\''に置換するワンライナー ruby -pe '$_.gsub!(/'\''/, %q('"'\\\\\\\\''"'))'
![bashなどのshellでシングルクオートをエスケープする方法 - 中野智文](https://cdn-ak-scissors.b.st-hatena.com/image/square/df3a50c14b465108d37d0f484920317dd74971fb/height=288;version=1;width=512/http%3A%2F%2Fu.xgoo.jp%2Fimg%2Fsns%2Fblog.png)