昨天在 Hacker News 首頁上看到「SSH quoting」這個,看得出來作者被 OpenSSH 玩弄到不要不要的樣子...
先簡單的整理一下:
$ ssh example.com 'cd /tmp; pwd' /tmp $ ssh example.com 'bash -l -c "cd /tmp; pwd"' /tmp $ ssh example.com bash -l -c "cd /tmp; pwd" /home/gslin
第三個指令發生的「預期外的行為」,但寫習慣的人會把指令全部包成一個字串,就很自然的避開這個問題了。當然 OpenSSH 的設計 (讓你不用加 quote 也會動) 的確也是容易中獎的點啦...