我在此处将变量从 SSH 服务器分配到本地机器变量的另一个问题从未成功回答,我不确定如何“碰撞”该问题以获得更多视图,但如何将本地变量的值设置为该值ssh 服务器上的变量?
#!/bin/sh
ssh_cmd="ssh-t -o StrictHostKeyChecking=no -o ControlPath=~/.ssh/master-$$ -o ControlMaster=auto -o ControlPersist=10"
local_var=""
$ssh_cmd user@server " server_var=\"test\" "
local_var=$($ssh_cmd user@server 'echo $server_var')
echo $local_var
这将导致空值。
编辑
我正在使用 ssh 连接共享,我认为整个会话(连同连接都是共享的),因此我正在建立初始连接并设置变量,然后重新连接到该会话以回显设置的变量。
我在 ssh 服务器上有一个程序,用于检索虚拟机的 IP 地址。我的本地脚本需要这个地址,以便我从本地脚本对虚拟机运行一些东西。
ssh 服务器不仅仅是获取 IP 地址,但我需要在本地脚本中了解这一功能。