centos7 定時執行ping指令碼
阿新 • • 發佈:2022-05-06
宿主機安裝虛擬機器centos7系統後,隔天區域網內其他電腦會連不上宿主機上的centos7系統。必須要centos7系統ping區域網內其他機器才行。嘗試了很多辦法,都沒有解決,故使用crontabs定時執行指令碼。
1.安裝crontabs服務
yum install crontabs -y
systemctl enable crond #設為開機啟動
systemctl start crond #啟動crond服務
systemctl reload crond #重啟crond服務
systemctl status crond #檢視是否啟動
2.寫自己的ping指令碼命令
新建指令碼ping.sh,編輯新增內容如下
#!/bin/bash
IP_LIST=`cat pingip`
for i in ${IP_LIST}
do
ping=`ping -c 3 $i > /dev/null`
if [ $? -ne 0 ];then
echo "ping $i fail"
else
echo "ping $i ok"
fi
done
同目錄下新建ip列表pingip檔案
10.1.1.2
10.3.2.4
3.設定定時任務
開啟/etc/crontab檔案,編輯內容在末尾加上自己的指令碼 * 9 * * * root /mnt/scheduledTask/ping/ping.sh 載入任務,生效 crontab /etc/crontab
4.配置檔案詳解
位置:
五個*號
* * * * * command
分 時 日 月 周 命令
操作符
1. * 取值範圍內的所有數字 ,代表所有。
2. / 每過多少個數字 ,代表每隔n長時間
3. - 從X到Z ,代表一段時間範圍
4. ,雜湊數字,代表分割開多個值
5. 任務例子
* * * * * /root/backup.sh #每1分鐘執行一次 3,15 * * * * /root/backup.sh #每小時的第3分鐘和第15分鐘執行一次 3,15 8-11 * * * /root/backup.sh #每天的8點到11點的第3和第15分鐘執行一次 3,15 8-11 */2 * * /root/backup.sh #每隔兩天的上午8點到11點的第3和第15分鐘執行一次 3,15 8-11 * * 1 /root/backup.sh #每週一上午8點到11點的第3和第15分鐘執行一次 30 21 * * * /root/backup.sh #每晚的21:30執行一次 45 4 1,10,22 * * /root/backup.sh #每月1、10、22日的4 : 45執行一次 10 1 * * 6,0 /root/backup.sh #每週六、週日的1 : 10執行一次 0,30 18-23 * * * /root/backup.sh #每天18 : 00至23 : 00之間每隔30分鐘執行一次 0 23 * * 6 /root/backup.sh 每星期六的晚上23: 00 pm執行一次 * */1 * * * /root/backup.sh 每一小時執行一次 * 23-7/1 * * * /root/backup.sh 每天晚上23點到第二天早上7點之間,每隔一小時執行一次