求一个Shell脚本,在每周的周四晚上18:36连续重启十次,希望能记下重启每次重启的时间。
至少得两个脚本吧,一个放在crontab里,作为第一次重启的触发脚本,另一个可放在/etc/rc.local里,作为每次启动后记录日志,并再次重启的脚本
vi /usr/local/bin/shell1.sh
#!/bin/bash
if [ ! -d /var/reboot ];then
mkdir /var/reboot
fi
echo "1" > /var/reboot/reboot.times
echo "$(date +%c): 开始第1次重启动 ..." >> /var/reboot/reboot.log
/sbin/shutdown -r now
vi /usr/local/bin/shell2.sh
#!/bin/bash
if [ -f /var/reboot/reboot.times ];then
i=`cat /var/reboot/reboot.times`
echo "$(date +%c): 第$i次重启动已完成 ..." >> /var/reboot/reboot.log
if [ $i -lt 10 ];then
let i=i+1
# 或
#i=`expr $i + 1`
echo $i > /var/reboot/reboot.times
echo "$(date +%c):开始第$i次重启动..." >> /var/reboot/reboot.log
/sbin/shutdown -r now
else
rm -f /var/reboot/reboot.times
fi
fi
把shell1.sh 和shell2.sh都放到/usr/local/bin里,添加可执行权限,然后在root的crontab里加上:
36 18 * * 4 /usr/local/bin/shell1.sh
并在/etc/rc.local里加上:
/usr/local/bin/shell2.sh