SSH:从远程服务器本地使用远程Bash/KSH源命令集变量
时间:2020-01-09 10:42:13 来源:igfitidea点击:
如何在远程源bash shell脚本中使用本地设置的变量?
代码是:
user @ slave $source ssh user @ master" /service/dyn.master.setenv.sh --mode = slave"
echo $var
var未设置,并且出现各种错误。
如何做bash脚本文件的远程源(来自master.example.com),并在slave.example.com上本地设置shell变量?
您需要使用eval或者source命令来解决问题:
source
或者
eval $(ssh user@master cat /path/to/varfile)
例子
如下所示在主服务器上创建名为/tmp/foo的文件master.example.com:
JAIL=/lighttpd PHP=/opt/bin/php5-cgi MINIMAIL=/opt/bin/chroot-sendmail
在名为slave.example.com的服务器/工作站上执行以下命令(请注意,[user @ slave~] $是提示符):
[user@slave ~]$ source
或者
[user@slave ~]$ eval $(ssh [email protected] cat /tmp/foo) [user@slave ~]$ echo "$JAIL $PHP $MINIMAIL"