执行此命令时:
user@local:~ >ssh user@remote " export myvar=myvalue ; echo myvar=$myvar ; "
Run Code Online (Sandbox Code Playgroud)
我得到输出:
myvar=
Run Code Online (Sandbox Code Playgroud)
直接在远程计算机上运行时,我得到了预期的结果:
user@remote:~ > export myvar=myvalue ; echo myvar=$myvar ;
Run Code Online (Sandbox Code Playgroud)
输出:
myvar=myvalue
Run Code Online (Sandbox Code Playgroud)
那么如何在ssh命令中设置变量呢?
gle*_*man 11
那是因为你正在使用双引号,所以在调用ssh 之前,变量正在本地机器上展开.使用单引号:
ssh user@remote 'export myvar=myvalue ; echo myvar=$myvar'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8801 次 |
| 最近记录: |