让我们假装,在当前的shell中我有一些变量
$ echo $MY_VAR
$ 2
我想要的是将此变量的值传递给我通过ssh执行的命令的参数,如:
ssh -i /ebs/keys/test root@some.ip '/some/command -<here_i_want_to_have_value_of_$MY_VAR_variable>'
谢谢!
答案 0 :(得分:7)
假设你不能在整个命令周围使用双引号来ssh,你可以像这样打破$ MY_VAR:
ssh -i /ebs/keys/test root@some.ip '/some/command -'"$MY_VAR"
如果ssh的其余命令不包含将在双引号内解释的标记,则可以用双引号而不是单引号括起整个命令。
答案 1 :(得分:4)
在命令周围使用双引号:
ssh -i /ebs/keys/test root@some.ip "/some/command $MY_VAR"
本地shell将在双引号内扩展变量。