如果Linux服务器未配置免密登录,每次使用ssh执行远程脚本时,都需要输入密码。
使用sshpass命令可以在多个Linux服务器上批量执行脚本, *** 作步骤如下:
$ yum install -y sshpass
2、服务器检查脚本
脚本文件: check_cmd.sh
#!/bin/sh
echo ----------------------------------------
echo 检查ip:
ip a|grep 192
echo 检查服务:nginx
systemctl list-units|grep nginx
echo 检查端口:8080
netstat -nao |grep 8080|awk '{print }'| sort |uniq -c |sort -nr
echo 检查进程:java
ps -ef|grep java
echo 检查目录:home
ll /home
echo ----------------------------------------
3、批量密码登录(sshpass)
脚本文件: check_ips.sh
#!/bin/sh
LOG_FILE=result.`date +%Y%m%dT%H%M%S`.log
sshpass -p '123456' ssh root@192.168.0.10 < check_cmd.sh >>$LOG_FILE
4、执行脚本
# 添加可执行权限
chmod +x check_cmd.sh
chmod +x check_ips.sh
# 执行脚本
./check_ips.sh
执行脚本后,将在当前目录生成一个执行日志文件:result.***.log
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)