我需要在 750 小时内停止在 aws 上运行的服务器。有什么方法可以让我在该时间限制内自动完成关闭过程吗?
答案1
这是一个完成此项工作的简单 bash 脚本(将其保存为带有 .sh 扩展名的文件):
#!/bin/bash
reboot=$((750*3600))
uptime=$(awk -F. '{print $1}' /proc/uptime)
if [ $uptime -ge $reboot ]; then
shutdown -h
fi
让我解释:
reboot=$((750*3600))
我们用秒来表示 750 小时
uptime=$(awk -F. '{print $1}' /proc/uptime)
这是系统正常运行时间(以秒为单位)
保存文件后授予其可执行权限:
chmod +x name-of-your-file.sh
您可以设置一个 cron 作业来每小时执行此脚本:
sudo crontab -e
然后粘贴此内容:
0 * * * * /path/to/your/script.sh