systemd-timerを使ってみる
History
#Systemd #Systemd-Timer #Linux

ユニットファイルの書き方

/etc/systemd/system/sample.service

[Unit]
Description=Sample Service

[Service]
Type=oneshot
ExecStart=<実行したいコマンドやシェルスクリプト>

/etc/systemd/system/sample.timer

[Unit]
Description=Sample Timer

[Timer]
OnCalendar=Sat *-*-* 10:00:00

[Install]
WantedBy=timers.target

timerファイルのOnCalendarの書き方

曜日 年-月-日 時:分:秒の形式で複数行書ける。
カンマ区切りで複数指定、..で範囲指定ができる。

# 毎日15:00に実行させたい場合
OnCalendar=*-*-* 15:00:00

# 毎週土曜日10:00に実行させたい場合
OnCalendar=Sat *-*-* 10:00:00

# 毎月10日3:00に実行させたい場合
OnCalendar=*-*-10 3:00:00

# 毎月10,20,30日4:00に実行させたい場合
OnCalendar=*-*-10,20,30 4:00:00

# 毎日10:00,11:00,12:00に実行させたい場合
OnCalendar=*-*-* 10..12:00:00

タイマーの有効化

sudo systemctl enable --now sample.timerで有効化する。
編集した場合は必ずsudo systemctl daemon-reloadを実行する。

設定したタイマーの確認

systemctl list-timers --all

« Manjaroを手動インストールする
LineageOS20のビルド (Essential Phone) »