これは shutdown command
から直接行うことができます 、man shutdown
を参照 :
SYNOPSIS
/sbin/shutdown [-akrhPHfFnc] [-t sec] time [warning message]
[...]
time When to shutdown.
たとえば、
shutdown -h 21:45
shutdown -h
が実行されます 21時45分。
この機能を提供しないコマンドについては、次のいずれかを試すことができます:
A.で使用
at
デーモンはまさにこのために設計されています。 OSによっては、インストールが必要な場合があります。 Debian ベースのシステムでは、これは次の方法で実行できます:
sudo apt-get install at
at
にコマンドを与える方法は 3 つあります。 :
パイプしてください:
$ echo "ls > a.txt" | at now + 1 min
warning: commands will be executed using /bin/sh
job 3 at Thu Apr 4 20:16:00 2013
実行するコマンドをテキスト ファイルに保存し、そのファイルを at
に渡します。 :
$ echo "ls > a.txt" > cmd.txt
$ at now + 1 min < cmd.txt
warning: commands will be executed using /bin/sh
job 3 at Thu Apr 4 20:16:00 2013
at
を渡すこともできます STDIN からのコマンド:
$ at now + 1 min
warning: commands will be executed using /bin/sh
at> ls
次に、Ctrl を押します D at
を終了するには シェル。 ls
コマンドは 1 分で実行されます。
[[CC]YY]MMDDhhmm[.ss]
の形式で非常に正確な時間を指定できます 、のように
$ at -t 201403142134.12 < script.sh
これにより、スクリプト script.sh
が実行されます 2014 年 3 月 14 日 21 時 34 分 12 秒。
B. cron を使用する (ただし、これはシャットダウンには適していません)
もう 1 つのアプローチは、cron
を使用することです。 特定の時間にタスクを実行するように設計されたスケジューラ。通常、繰り返されるタスクに使用されますが、特定の時間を指定することもできます。各ユーザーには、どのジョブをいつ実行するかを制御する独自の「crontab」があります。 crontab の一般的な形式は次のとおりです。
* * * * * command to be executed
- - - - -
| | | | |
| | | | +----- day of week (0 - 6) (Sunday=0)
| | | +------- month (1 - 12)
| | +--------- day of month (1 - 31)
| +----------- hour (0 - 23)
+------------- min (0 - 59)
たとえば、これは ls
を実行します 毎日14:04:
04 14 * * * ls
特定の日付の cronjob をセットアップするには:
<オール>
crontab -e
を実行して、新しい crontab を作成します。 .これにより、お気に入りのテキスト エディターのウィンドウが表示されます。
開いたばかりのファイルにこの行を追加します。この特定の例は、2014 年 3 月 15 日の 14:34 に、その日が金曜日の場合に実行されます (つまり、複数回実行される可能性があります)。
34 14 15 5 /path/to/command
ファイルを保存してエディターを終了します。
This SO answer は、一度だけ実行する方法を提案していますが、私は一度も使用したことがないため、保証できません.
いいえ、シャットダウン コマンドで日付を指定することはできませんが、2 つの代替手段があります:
1) 最も簡単な方法は、at コマンドを使用することです。次の例は shutdown +5
を実行します 特定の日時:
echo "shutdown +5" | at 10:05am 2019-01-19
2) 計算機を使用してもかまわず、たとえば 24 時間 (24 * 60 =1440 分) でシャットダウンしたい場合、その間にシステムが再起動しないことが確実な場合:
shutdown -r +1440
12:00 にシステムをシャットダウンします:
$ sudo shutdown -h 12:00
オプション:
-h, -P, --poweroff
マシンの電源を切ります。
-r, --reboot
マシンを再起動してください。
-c
保留中のシャットダウンをキャンセルします。