GNU/Linux >> Linux の 問題 >  >> Linux

Linux – Systemdで30分ごとにスクリプトを実行しますか?

システムを起動してから30分ごとにスクリプトを実行したいと思います。 cronを使用できることは知っていますが、この機能を頻繁に使用する予定はないため、systemdで試してみたいと思います。

これまでのところ、何かを一度だけ実行できる単調なタイマーしか見つかりませんでした(少なくとも私はそう思います)。 foo.timerはどうですか? および[email protected] 起動/システム起動から30分ごとに何かを実行したい場合のように見えますか?

[メール保護]

[Unit]
Description=run foo
Wants=foo.timer

[Service]
User=%I
Type=simple
ExecStart=/bin/bash /home/user/script.sh

foo.timer

[Unit]
Description=run foo

[Timer]
where I am stuck... ???

承認された回答:

2つのファイルを作成する必要があります。1つはサービス用、もう1つは同じ名前のタイマー用です。

例:

/etc/systemd/system/test.service

[Unit]
Description=test job

[Service]
Type=oneshot
ExecStart=/bin/bash /tmp/1.sh

/etc/systemd/system/test.timer

[Unit]
Description=test

[Timer]
OnUnitActiveSec=10s
OnBootSec=10s

[Install]
WantedBy=timers.target

その後、コマンドsystemctl daemon-reloadを使用してsystemdをリロードします systemctl start test.timerでタイマーを開始します 、またはデフォルトで有効にします(systemctl enable test.timer

1.shのコンテンツをテストする

#!/bin/bash
echo `date` >> /tmp/2

そして、使用可能なすべてのタイマーをチェックするコマンド:systemctl list-timers --all

プロジェクトページの詳細情報とArchLinuxページの例


Linux
  1. Linux –シャットダウン直前にsystemdでスクリプトを実行する方法は?

  2. Linux – Fsckスクリプトの場所?

  3. ユーザーとして引数を使用してスクリプトを実行しますか?

  1. ボトルを使用してLinux上でWindowsソフトウェアを簡単に実行

  2. Linux で PHP スクリプトをコンパイルする

  3. シバンを追加する方法 #! Linuxでphpスクリプトを使用しますか?

  1. Ubuntu - sudo を使用して起動時にコマンドを実行する

  2. bash.sh で cron を実行する権限が拒否されました

  3. シェル スクリプトで Linux を使用してテンプレートを作成しますか?