batファイルを使用してWindowsをシャットダウン、再起動、またはログオフするにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/162304

質問

リモートデスクトップ接続を使用してワークステーションにアクセスしました。しかし、この環境では、[スタート]メニューの電源オプションを使用できません。シャットダウンまたは再起動する別の方法が必要です。

コマンドラインを使用してコンピューターの電源状態を制御するにはどうすればよいですか

役に立ちましたか?

解決

shutdown コマンドを使用する最も一般的な方法は次のとおりです。

  • shutdown -s <!>#8212;シャットダウンします。
  • shutdown -r <!>#8212;再起動します。
  • shutdown -l <!>#8212;ログオフします。
  • shutdown -h <!>#8212;休止状態。

    注:ユーザーが-hは<!> quot; help <!> quot;を意味すると考える一般的な落とし穴があります。 (これは、他のすべてのコマンドラインプログラムに対して実行されます... shutdown.exeを除き、<!> quot; hibernate <!> quot;を意味します)。その後、shutdown -iを実行し、誤ってコンピューターの電源をオフにします。気をつけてください。

  • shutdown -a <!>#8212; <!> quot;インタラクティブモード<!> quot;。アクションを実行する代わりに、GUIダイアログを表示します。

  • -f <!>#8212;以前のシャットダウンコマンドを中止します。

上記のコマンドは、これらの追加オプションと組み合わせることができます。

  • -t <seconds> <!>#8212;プログラムを強制終了します。シャットダウンプロセスが停止するのを防ぎます。
  • -t 0 <!>#8212;シャットダウンまでの時間を設定します。すぐにシャットダウンするには-c <message>を使用します。
  • -y <!>#8212;シャットダウンメッセージを追加します。メッセージはイベントログに記録されます。
  • rundll32 <!>#8212;強制的に<!> quot; yes <!> quot;すべてのシャットダウンクエリに答えます。

    注:このオプションは、公式ドキュメントには記載されていません。 これらのStackOverflowユーザーによって発見されました。


この回答とともに、他の本当に良い回答もいくつか紹介したいと思います。ここでは、順序は特にありません。

他のヒント

リモートマシンを使用している場合は、-fオプションを追加して、再起動を強制することもできます。そうしないと、セッションが閉じて、頑固なアプリがシステムをハングさせる可能性があります。

すぐに再起動を強制する場合は常にこれを使用します:

shutdown -t 0 -r -f

より親しみやすい<!> quot;しばらくお待ちください<!> quot;オプション、これを使用できます:

shutdown -t 30 -r

コメントでわかるように、-fはタイムアウトによって暗示されています。

Brutus 2006は、これらのオプションのGUIを提供するユーティリティです。

誰もリモートシャットダウンの-mオプションについて言及していません:

shutdown -r -f -m \\machinename

また:

  • -rパラメーターは、再起動を引き起こします(物理的に起動するのが難しい場合があるため、通常、これはリモートマシンで必要なものです)。
  • -fパラメーターオプションは強制的に再起動します。
  • もちろん、リモートマシンをシャットダウンするには適切な権限が必要です。

元の回答:2008年10月

また、すべての <!> quot; rundll32.exe shell32.dll <!> quot; セリエ:

(以下の更新を参照)

  • rundll32.exe user.exe,**ExitWindows** [Windowsの高速シャットダウン]
  • rundll32.exe user.exe,**ExitWindowsExec** [Windowsを再起動]

    rundll32.exe shell32.dll,SHExitWindowsEx n
    

ここでnは以下を表します:

  • 0-LOGOFF
  • 1-SHUTDOWN
  • 2-REBOOT
  • 4-FORCE
  • 8-POWEROFF

(組み合わせ可能-<!> gt; 6 = 2 + 4 FORCE REBOOT


2015年4月更新(6年以上後):

1800情報は、コメント内

  

この目的のためにrundll32.exeを使用しないでください。コマンドラインで渡した関数には、非常に特定のメソッドシグネチャがあることが期待されます-ExitWindowsのメソッドシグネチャと一致しません。

Raymond CHEN は次のように書いています。

  

rundll32によって呼び出される関数に必要な関数シグネチャは次のとおりです。

void CALLBACK ExitWindowsEx(HWND hwnd, HINSTANCE hinst,
       LPSTR pszCmdLine, int nCmdShow);
  

それは、user32 LockWorkStationuser32 ExitWindowsExなど、Rundll32によって呼び出されるように設計されていないランダム関数を呼び出すために人々が<=>を使用することを止めていません。

(oops)

  

ExitWindowsExの実際の関数シグネチャは次のとおりです。

BOOL WINAPI ExitWindowsEx(UINT uFlags, DWORD dwReserved);

そしてそれを明確にするために:

  

<=>はWindows 95の残り物であり、多くの最新のエンジニアリングガイドラインに違反しているため、少なくともWindows Vistaから非推奨になっています。

もう1つの小さなヒント:バッチファイルルートに行くとき、誤って実行した場合に備えて、バッチファイルを中止できるようにします。そのため、バッチファイルはシャットダウンを呼び出しますが、その後はコマンドプロンプトが表示されたままになります。

@echo off
echo Shutting down in 10 seconds. Please type "shutdown /a" to abort.
cmd.exe /K shutdown /f /t 10 /r

さらに、タイマーがあるため、オレゴントレイルでの狩り

マシンにリモート接続した場合(ターゲットはWindows <!> nbsp; XPです。ターゲットWindows <!> nbsp; Vistaについてはわかりません)、スタートメニューのシャットダウンは置き換えられますがセッションの切断などによって、「Windowsセキュリティ」と呼ばれるものが存在するはずです。これは、 Ctrl + Alt + < kbd>終了。オーウェンが指摘したとおり。

おそらくこれを知っていますが、念のために:<!> quot; Run <!> quot;にshutdown -r(または好きなコマンド)を入力する方がはるかに簡単です。ボックスに移動してEnterキーを押します。

どこにでもバッチファイルを残して保存します。

私はパーティーに遅れましたが、まだこの回答は見つかりませんでした。 バッチファイルを使用したり、コマンドを入力したくない場合。デスクトップにフォーカスを設定し、 Alt + F4 を使用するだけです。

Windowsは何をしたいかを尋ねるので、シャットダウンまたは再起動を選択します。

スクリーンショットやビデオについては、 https:/をご覧ください。 /tinkertry.com/how-to-shutdown-or-restart-windows-over-rdp

メモ帳または基本的なログオフコマンドのワードパッド

@echo off
shutdown -l

これは基本的に手動で開始およびログオフをクリックするのと同じですが、バッチファイルの準備ができている場合はわずかに高速です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top