ssh执行环境变量(A读取不了B的环境变量)

版权声明:此博客为个人维护,内容均来自原创及互连网转载,若需转载需注明出处。 https://blog.csdn.net/weixin_37677769/article/details/82907124
A机器环境变量JAVA_HOME:/usr/java/jdk1.8.0_45
B机器环境变量JAVA_HOME:/usr/java/jdk1.8.0_181
A执行:ssh B "echo $JAVA_HOME"的结果是
A的JAVA_HOME(/usr/java/jdk1.8.0_45)而不是B的。

试了ssh B "source /etc/profile; echo $JAVA_HOME",不行

但是如果在B里有一个shell
A来调用:ssh B "xxx.sh"
是找不到$JAVA_HOME这个值的(也就是什么都不打印)。
如果ssh B "source /etc/profile; xxx.sh"就能打印出来。

B的shell文件的执行权限是755的时候,A可以执行,575和557不行

有可能需要修改.bashrc,但是我修改了还是不行

目前只好装相同版本的java

猜你喜欢

转载自blog.csdn.net/weixin_37677769/article/details/82907124