Mat*_*ron 2 shell ssh quoting here-document variable
我想将变量从源发送到主机,然后执行主机脚本。这是我的代码:
var1=1
ssh -p 42 root@xxx /bin/bash << EOF
var2=2
echo $var1
echo $var2
EOF
Run Code Online (Sandbox Code Playgroud)
返回 : 1
var1=1
ssh -p 42 root@xxx /bin/bash << \EOF
var2=2
echo $var1
echo $var2
EOF
Run Code Online (Sandbox Code Playgroud)
返回 : 2
如何返回:
1
2
Run Code Online (Sandbox Code Playgroud)
?
您希望本地 shell 扩展$var1
但远程 shell 扩展$var2
:
var1=1
ssh -p 42 root@xxx /bin/bash << EOF # un-quoted/escaped
var2=2
echo $var1
echo \$var2
EOF
Run Code Online (Sandbox Code Playgroud)