ssh远程连接服务器执行命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ssh远程连接服务器执行命令相关的知识,希望对你有一定的参考价值。

参考技术A 首先说一下使用ssh远程连接服务器执行命令的方法:
为了方便描述,这里把测试服务器称之为A1,目标服务器称之为A2

如果可以直接登录到A2,则配置成功!

下面来说问题:
ssh在远程连接服务器执行命令的时候,经常会遇到环境变量的问题,如下:

如果出现上面的提示,则说明环境变量配置有问题。
先来说解决办法

问题解决!

这里就要说明bash有两种方式interactive + login shell模式和non-interactive + non-login shell模式
在服务器上执行命令,走的是interactive + login shell模式,而通过远程登录执行命令,走的是non-interactive + non-login shell模式。
这两种模式对于环境变量的读取是有区别的。

Shell首先会加载/etc/profile文件,然后再尝试依次去加载下列三个配置文件之一,一旦找到其中一个便不再接着寻找:
~/.bash_profile
~/.bash_login
~/.profile

所以当远程执行命令时,我们只需要让~/.bashrc文件中的环境变量与/etc/profile中的环境变量一致即可!

参考:
如何解决SSH远程执行命令找不到环境变量的问题

以上是关于ssh远程连接服务器执行命令的主要内容,如果未能解决你的问题,请参考以下文章

ssh远程连接linux服务器并执行命令

通过 ssh 在远程服务器上执行命令

vs code远程连接主机

命令远程连接ssh并执行命令

模拟远程SSH执行命令的编解码说明

Linux命令之远程连接ssh