• 智能AI问答!更聪明、更完整、原创作!
  • 一款基于GPT的超级AI机器人,可以回答问题、聊天、创作、写文案!

通过shell脚本实现T以下功能: 免密登录30.2.3.1服务器执行/home/test/test.sh操作,如执行失败等待300秒后重新执行,循环三遍后如果执行失败则报错退出,打印日志

发布于 2023-09-01 12:08:24

你可以使用以下Shell脚本来实现这个功能:

#!/bin/bash

count=0
while [ $count -lt 3 ]
do
    sshpass -p "your_password" ssh user@30.2.3.1 '/home/test/test.sh'  # 免密登录并执行操作

    if [ $? -eq 0 ]; then  # 执行成功
        break
    fi

    count=$((count+1))
    sleep 300  # 等待300秒后重新执行
done

if [ $count -eq 3 ]; then
    echo "执行失败!"
    exit 1
fi

echo "执行成功!"

其中,需要将your_password替换为实际的密码,user替换为实际的用户名。在脚本中使用了sshpass命令免密登录远程服务器,并执行/home/test/test.sh脚本。 脚本会进行循环尝试执行,每次失败后会等待300秒。如果连续尝试三次都失败,则报错退出,并打印日志。

请注意,为了安全起见,建议将密码保存在安全的地方,不要直接写在脚本中。另外,确保服务器的IP地址、用户名和密码正确无误。

0 条评论

发布
问题

在线
客服