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

ターミナルから特定の日時に Linux をシャットダウンするには?

これは 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
    

    保留中のシャットダウンをキャンセルします。


    Linux
    1. LinuxでBashの履歴から特定のコマンドをクリアする方法

    2. Linux 端末から特定のファイルを見つけるにはどうすればよいですか?

    3. Linux ターミナルから Windows マシンをシャットダウンする

    1. LinuxでターミナルからWebを検索する方法

    2. Linuxでのコピーから特定のディレクトリを除外する方法

    3. Linuxターミナルから正規表現を使用してフォルダーを削除するにはどうすればよいですか

    1. Linuxで特定のリポジトリからパッケージをインストールする方法

    2. Linux – Linuxからブートローダーを実行する方法は?

    3. Linuxをシャットダウンまたは再起動する方法