通过网络从另一台计算机获取环境变量

通过网络从另一台计算机获取环境变量

我的网络上有一个 myuserid@remotemachine,我可以通过公钥/私钥 ssh 访问它(即不提示输入密码,直接登录)。有没有办法在我的本地计算机上使用 Python(或 bash,或任何其他标准 linux 命令)读取其中一个我的用户ID环境变量远程机器无需运行预先准备的远程脚本?

答案1

当然,你可以使用 ssh 来运行远程命令

在你的终端上尝试这个:

ssh myuserid@remotemachine echo \$HOSTNAME

答案2

除了运行远程进程(例如从本地系统或脚本运行的任何地方使用此命令)之外(由 FangQ 建议)...

ssh user@remote echo \$ENVVARNAME

...要获取您所请求的环境变量的输出(在本例ENVVARNAME中,这是一个伪占位符),您无法做到。

如果不执行远程系统上的进程,则无法获取整个环境变量列表。因此,除非运行 SSH 调用进入远程环境以转储环境变量,然后解析该输出,否则您将无法获取“远程”变量。

这适用于 Python、Bash 和任何其他脚本语言 - 您要么必须通过远程进程调用检索数据并解析其输出,要么必须在远程系统上运行脚本。

相关内容