远程ssh执行命令时提示找不到命令

Posted tele-share

tags:

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

最开始的时候碰到这种问题,是在hadoop003上配置了jdk1.8, 在hadoop002上执行ssh hadoop003 java -version提示没有命令,先ssh hadoop003然后执行java -version则没有问题后来执行分发脚本时也碰到过这种问题,如果分步执行,先ssh到主机,然后执行命令就没有问题,然而直接ssh + 主机 + 命令就会报错,百度之后发现是ssh远程执行命令时加载的环境文件是~/.bashrc.所以解决的思路就是在~/.bashrc中添加需要的环境变量即可,后来又研究了下发现和登录模式有关请参考https://blog.csdn.net/whitehack/article/details/51705889

 1 #java     
 2 export JAVA_HOME=/opt/module/jdk1.8.0_181
 3 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
 4 export PATH=$JAVA_HOME/bin:$PATH
 5         
 6 #hadoop
 7 export HADOOP_HOME=/opt/module/hadoop-3.1.1
 8 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
 9 export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
10 export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib:$HADOOP_COMMON_LIB_NATIVE_DIR"
11     
12 #myqsl
13 export PATH=$PATH:/usr/local/mysql/bin

 

以上是关于远程ssh执行命令时提示找不到命令的主要内容,如果未能解决你的问题,请参考以下文章

ssh执行远程服务器脚本 提示php: command not found

Python API通过SSH执行远程命令[重复]

ifconfig命令执行时,提示找不到路径

Ubuntu执行命令时,不sudo提示权限不足,sudo提示找不到该命令

编写一个shell脚本ssh到远程机器并执行命令

使用 Java 通过 ssh 运行命令