- 主题:remote机的环境变量
- remote machine已经定义了一个环境变量,如MYPWD
 现在local machine上执行:ssh xxx@remot_machine "echo $MYPWD",无法获得MYPWD的正确值,尝试ssh xxx@remot_machine "source ~/.bashrc echo $MYPWD"也不起作用;
 这是怎么回事,如何解决?
 (应用场景是local机调用一个remote机的代码,代码依赖一个在remote机上已定义的环境变量,目前这种应用会提示没有这个环境变量,但如果直接在remote机上运行是没有问题的)
 --
 FROM 210.41.233.*
 
- 通过脚本调应用。环境变量放脚本里
 
 【 在 DragonDon 的大作中提到: 】
 :
 : remote machine已经定义了一个环境变量,如MYPWD
 : 现在local machine上执行:ssh xxx@remot_machine "echo $MYPWD",无法获得MYPWD的正确值,尝试ssh xxx@remot_machine "source ~/.bashrc echo $MYPWD"也不起作用;
 : 这是怎么回事,如何解决?
 : (应用场景是local机调用一个remote机的代码,代码依赖一个在remote机上已定义的环境变量,目前这种应用会提示没有这个环境变量,但如果直接在remote机上运行是没有问题的)
 
 #发自zSMTH@如有雷同 纯属巧合
 --
 FROM 223.104.38.*
 
- 这种调用也没用:ssh xxx@remot_machine "export MYPWD=1234 echo $MYPWD"
 
 现在是远端代码里使用了os.environ['MYPWD']这种代码(远端已经定义了MYPWD),但在locall端调用时,MYPWD这个环境变量不生效,也无法传过去
 
 【 在 newre 的大作中提到: 】
 : 通过脚本调应用。环境变量放脚本里
 :
 : #发自zSMTH@如有雷同 纯属巧合
 --
 FROM 210.41.233.*
 
- 同样的代码,ssh到本地可以用吗?
 --
 FROM 125.86.92.*
 
- 直接登录remote端,是可以正常运行的;从local ssh到remote后,也是可以正常运行的;
 但在本地ssh+运行一体化,就找不到remote的环境变量
 【 在 Turningpt 的大作中提到: 】
 : 同样的代码,ssh到本地可以用吗?
 --
 FROM 210.41.233.*
 
- man bash 搜INVOCATION
 【 在 DragonDon 的大作中提到: 】
 : remote machine已经定义了一个环境变量,如MYPWD
 : 现在local machine上执行:ssh xxx@remot_machine "echo $MYPWD",无法获得MYPWD的正确值,尝试ssh xxx@remot_machine "source ~/.bashrc echo $MYPWD"也不起作用;
 : 这是怎么回事,如何解决?
 : ...................
 --
 FROM 139.226.178.*
 
- 帮你向Bing问了一下,不过我现在没环境还没试行不行,你有兴趣可以试试。  - -- - FROM 171.221.52.* 
- try
 ssh xxx@remot_machine "echo \$MYPWD"
 or
 
 ssh xxx@remot_machine 'echo $MYPWD'
 
 主要是$转义的问题
 【 在 DragonDon 的大作中提到: 】
 : remote machine已经定义了一个环境变量,如MYPWD
 : 现在local machine上执行:ssh xxx@remot_machine "echo $MYPWD",无法获得MYPWD
 : 的正确值,尝试ssh xxx@remot_machine "source ~/.bashrc echo $MYPWD"也不起作用;
 : 这是怎么回事,如何解决?
 : ...................
 --
 FROM 120.229.207.*
 
- ssh remote cmd这种格式默认不分配伪终端,可能连登陆shell也不执行,试试 ssh -T remote cmd  
 
 【 在 DragonDon (DragonDon) 的大作中提到: 】
 :  remote machine已经定义了一个环境变量,如MYPWD
 :  现在local machine上执行:ssh xxx@remot_machine "echo $MYPWD",无法获得MYPWD的正确值,尝试ssh xxx@remot_machine "source ~/.bashrc echo $MYPWD"也不起作用;
 :  这是怎么回事,如何解决?
 :  (应用场景是local机调用一个remote机的代码,代码依赖一个在remote机上已定义的环境变量,目前这种应用会提示没有这个环境变量,但如果直接在remote机上运行是没有问题的)
 --
 FROM 222.64.168.*
 
- 算了,看不懂man
 【 在 JulyClyde 的大作中提到: 】
 : man bash 搜INVOCATION
 --
 FROM 112.193.113.*