如何通过zsh别名将单引号传递给applescript

时间:2017-11-16 08:41:41

标签: bash shell applescript alias zsh

我使用applescript通过网关登录ssh。

ch

当密码包含'时,将无法登录。

并且下面的AppleScript也没用[/ p>

alias  sshtoxxxx="osascript  ~/workspace/script/applescript/fox/ssh_xxxx.applescript  root@10.10.1.199  hFVDa4d\'vLe"

2 个答案:

答案 0 :(得分:1)

这个问题与Applescript无关。 Zsh并不关心所编写的可执行文件的编程语言。

如果您想使用别名,您的方法是正确的。 Applescript将密码参数视为 hFVDa4d' vL 。但是,为了便于调试,我建议使用Zsh函数而不是别名;在这里你必须放弃反斜杠:

function sshtoxxxx {
  osascript  ~/workspace/script/applescript/fox/ssh_xxxx.applescript  root@10.10.1.199  "hFVDa4d'vLe"
}

答案 1 :(得分:-1)

在Zsh或Bash中,双引号字符串中不能有单引号,但双引号必须在单引号之前关闭,然后重新打开。 E.g。

"This won't work in Bash"

"This way, it"'"ll work"