Expect+Shell 定時重啟山石防火牆
阿新 • • 發佈:2021-11-09
expect
安裝expect
yum install expect
shell指令碼
儲存位置/home/script/test.sh
#!/usr/bin/expect -f
set timeout -1
spawn ssh hillstone@IP_Addr
expect "*password*"
send "[YOUR PASSWORD]\r"
expect "*#"
send "reboot\r"
expect "*\[y\]/n:"
send "y\r"
expect eof
exit
Crontab
檢查Crontab狀態
[root@MiWiFi-R1CM-srv script]# systemctl status crond.service ● crond.service - Command Scheduler Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled) Active: active (running) since 二 2021-11-09 12:03:58 CST; 2min 31s ago Main PID: 20411 (crond) Tasks: 1 Memory: 1.3M CGroup: /system.slice/crond.service └─20411 /usr/sbin/crond -n 11月 09 12:03:58 MiWiFi-R1CM-srv systemd[1]: Started Command Scheduler. 11月 09 12:03:58 MiWiFi-R1CM-srv systemd[1]: Starting Command Scheduler... 11月 09 12:03:58 MiWiFi-R1CM-srv crond[20411]: (CRON) INFO (RANDOM_DELAY will be scaled with factor...d.) 11月 09 12:03:58 MiWiFi-R1CM-srv crond[20411]: (CRON) INFO (running with inotify support) 11月 09 12:03:58 MiWiFi-R1CM-srv crond[20411]: (CRON) INFO (@reboot jobs will be run at computer's ...p.) 11月 09 12:05:01 MiWiFi-R1CM-srv crond[20411]: (root) RELOAD (/var/spool/cron/root) Hint: Some lines were ellipsized, use -l to show in full.
增加Crontab任務
crontab -e
6 12 9 * * /home/script/test.sh
備註
expect特殊字元轉義
-
expect需要轉義的字串
1、 \ 需轉義為 \
2、 } 需轉義為 }
3、 [ 需轉義為 [
4、 $ 需轉義為 \$
5、 ' 需轉義為 \'
6、 " 需轉義為 \" -
send轉義
在特殊字元前加\完成轉義