gpt4 book ai didi

bash - 将 shell 变量传递给 ssh

转载 作者:行者123 更新时间:2023-11-29 09:10:23 26 4
gpt4 key购买 nike

我阅读了其他关于在远程 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

当我运行这段代码时,这些变量为空。有什么方法可以将值传递给 ssh 吗?

最佳答案

我想通了。在我正在执行以下操作的行上:

ssh $USERNAME@$BUILD_SERVER << 'ENDSSH'

我删除了单引号,它现在解释允许我的局部变量。如果我想在远程服务器上使用变量,我只需使用“\”

将它们转义
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

关于bash - 将 shell 变量传递给 ssh,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15838927/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com