ssh脚本远程执行命令出现xxx: command not found解决方案

前言,第一次碰见这种问题,也查阅了好多前辈的文章,都没有得到解决,自己突然想到一个方法,得到了解决,特此记录一下。

一,为了方便运维,多台服务器都在运行相同程序,每次巡检还要一台一台登录比较麻烦就写了个脚本,每次看多台服务器进程内存之类的只需输入密码即可,(也可设置免密,后续再慢慢搞)。

#!/bin/sh
for a in {01..10};do echo -e "\033[34m #####xxx$a########\033[0m";
ssh -t xxx@xxx$a "echo 磁盘#################################################磁盘;df -h;
echo 内存#########################################内存###############################33内存;free -h;
echo 网络ip##########################################################################网络i;ip a;
echo 负载####################################################################################负载负载;uptime;
echo 进程######################################################################33333#####进程;ps -ef|grep xxx|grep -v grep";
done

 二,可是在执行的时候却发现ip a这条命令会报错,出现bash: ip: command not found

三,随后网上查找解决办法,其中我觉得最科学的应该是这两位的解决办法,我是没解决,大家可以参考下

关于ssh远程执行命令出现xxx: command not found问题_ssh远程执行脚本找不到命令_咸鱼c君的博客-优快云博客

 ssh远程登陆执行命令:未找到命令_ssh未找到命令_maker&sky的博客-优快云博客

 四,但是修改当前用户环境变量.bashrc已经试过了还是不行,随后想到了,主要还是这条命令的路径未识别,随后查看which ip 得到ip命令目录,

 接着在ssh远程执行命令的时候写全路径是不是可以,随后经过测试确实可以,如下是对比图

①只写命令

②写明全路径命令

 

 五,修改执行脚本里的命令后问题得以解决。第一次分享,希望各位大佬多多提提建议。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值