hax*_*ode 4 variables ssh bash shell
我阅读了关于在远程ssh中传递变量的其他帖子,但这些解决方案对我来说似乎不起作用.
这是我的情况:我在我的shell脚本(在本地机器上)填充变量的值,然后通过ssh 在另一个系统上使用.我理解为什么这不起作用,但我想找到一种方法通过ssh在另一个系统的本地shell中使用值.
BUILD_SERVER="my_server"
ANOTHER_SERVER="my_server2"
ssh $USERNAME@$BUILD_SERVER << 'ENDSSH'
echo "$BUILD_SERVER"
echo "$ANOTHER_SERVER"
ENDSSH
Run Code Online (Sandbox Code Playgroud)
当我运行此代码时,这些变量为null.有没有办法将值传递给ssh?
我想到了.我正在做以下事情:
ssh $USERNAME@$BUILD_SERVER << 'ENDSSH'
Run Code Online (Sandbox Code Playgroud)
我删除了单引号,它现在解释了允许我的局部变量.如果我想在远程服务器上使用变量,我只需用"\"来转义它们
ssh $USERNAME@$BUILD_SERVER << ENDSSH
echo $BUILD_SERVER # echos the local server variable
LOCAL_SERVER="local_server"
echo \$LOCAL_SERVER # echos the remote server variable
ENDSSH
Run Code Online (Sandbox Code Playgroud)