cronの設定
二番煎じですが忘れることが多いのでQiitaに投稿
ステータス確認
$ /etc/init.d/cron status
● cron.service - Regular background program processing daemon
Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2021-03-30 21:54:08 JST; 4 days ago
Docs: man:cron(8)
Main PID: 560 (cron)
Tasks: 1 (limit: 2373)
Memory: 7.7M
CGroup: /system.slice/cron.service
└─560 /usr/sbin/cron -f
ユーザージョブ設定
$ crontab -u [user] -e
ジョブ登録
crontabの書き方は以下を参考
例:毎分ファイルを作成
* * * * * touch /tmp/hoge_`date +\%Y\%m\%d\%H\%M\%S`
確認
# cat /var/spool/cron/crontabs/bitnami
* * * * * touch /tmp/hoge_`date +\%Y\%m\%d\%H\%M\%S`
$ ls /tmp/hoge_*
/tmp/hoge_20210404085001 /tmp/hoge_20210404085201 /tmp/hoge_20210404085401
shで自動登録
以下のようなshを作成することでコードで管理することができる。
crontab.sh
#!/bin/sh
USERNAME=$(whoami)
echo "* * * * * touch /tmp/hoge_`date +\%Y\%m\%d\%H\%M\%S`" >> /tmp/crontab.temp
if crontab -u ${USERNAME} /tmp/crontab.temp
then
echo "crontab install is done successfully."
else
echo "crontab install is failed."
fi
rm /tmp/crontab.temp
いいね!と思ったら LGTM お願いします
【PR】プログラミング新聞リリースしました! → https://pronichi.com
【PR】週末ハッカソンというイベントやってます! → https://weekend-hackathon.toyscreation.jp/about/