忘れそうなコマンド類のメモ。
crontabで定期実行する例 指定は分、時、日、月、曜日を指定。
毎日11:00にとあるシェルを動かす場合
00 11 * * * /bin/sh /gvis/script/hogehoge.sh 1月15日と6月15日の11:00にとあるシェルを動かす場合
00 11 15 1,6 * /bin/sh /gvis/script/hogehoge.sh 毎週月曜から金曜の11:00にとあるシェルを動かす場合
00 11 * * 1-5 /bin/sh /gvis/script/hogehoge.sh 5分おきにとあるシェルを動かす場合
*/5 * * * * /bin/sh /gvis/script/hogehoge.sh crontabのコマンドライン crontabの登録内容をテキストに書き出して保存。
crontab -l > res.txt テキストからcrontab登録。
crontab ./res.txt ほとんど使わないけど、crontabの直接編集。 オッサンはnanoじゃなくviに慣れてるので、いったんテキストファイルをviで編集してからでないと登録しない。
crontab -e 変更前と変更後を維持したいから、直接編集は使わない。 業務利用だったら、diffで比較して差分が必要な箇所だけになってることを確認するのも理由。
ローカルlinuxのcrontab 実際のrootのcrontab設定。 シェルは間違って動くと困るものもあるので、実行権はつけてない。 (dockerのエンジン停止とか困る) 代わりに/bin/shで呼び出す。
ちゃんと書けば、書いておいたタイミングで確実に動いてくれる。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 #daily shutdown 59 23 * * * /bin/sh /gvis/script/901_OSstop.sh > /dev/null 59 11 * * 1-5 /bin/sh /gvis/script/901_OSstop.sh > /dev/null #Timely procdure 00,10,20,30,40,50 * * * * sync 01,11,21,31,41,51 0-23 * * * /bin/sh /gvis/script/903_ping_kanshi.sh 172.16.17.15 Yamaha_rtx1210 > /dev/null 05,15,25,35,45,55 0-23 * * * /bin/sh /gvis/script/802_CHKdiskStat.sh > /dev/null 06,16,26,36,46,56 6-21 * * * /bin/sh /gvis/script/803_CHKonlchkStat.sh > /dev/null 07,17,27,37,47,57 0-23 * * * /bin/sh /gvis/script/804_CHKsyslogStat.sh > /dev/null 09,19,29,39,49,59 6-23 * * * /bin/sh /gvis/script/805_CHKgavann-it.sh > /dev/null ### */2 0-23 * * * /bin/sh /gvis/script/808_CHKnetlogStat.sh > /dev/null */2 0-23 * * * /bin/sh /gvis/script/808_CHKnetlogStat2.sh > /dev/null #monthly GoogleDrive every Weekday 30 9 * * 1-5 /bin/sh /gvis/script/gdr/003_SyncNari.sh > /dev/null #daily Report 11 5 * * * /bin/sh /gvis/script/801_daily_report.sh > /dev/null 11 10 * * * /bin/sh /gvis/script/801_daily_report.sh > /dev/null #daily rm 00 7 * * * /bin/find /gvis/ -name ".*DS_Store" -print -exec rm {} ";" 01 7 * * * /bin/find /gvis/ -name "Thumbs.db" -print -exec rm {} ";" 02 7 * * * /bin/find /nari/ -name ".*DS_Store" -print -exec rm {} ";" 03 7 * * * /bin/find /nari/ -name "Thumbs.db" -print -exec rm {} ";" fsckしてからマウント ディスクの不整合を整えてマウントする。
...