將 Shutdown.exe 錯誤重新導向到檔案

將 Shutdown.exe 錯誤重新導向到檔案

我正在創建一個腳本來重新啟動計算機,我需要報告 shutdown.exe 命令的成功或失敗,作為腳本日誌記錄的一部分。我在將失敗的 shutdown.exe 進程的輸出重新導向到檔案時遇到問題。這是我的命令列:

shutdown.exe -r -t 50000 -m \\top34.top.local > c:\output.txt

當我執行此程式時,我在螢幕上看到以下訊息:「top34.top.local:輸入的電腦名稱無效或目標電腦不支援遠端關閉。請檢查名稱,然後重試或聯絡您的系統Administrator. (53)”,這是我所期待的,但c:\output.txt 是空白的- 並且不包含此錯誤。我的腳本需要將此行輸出到文字檔案以用於記錄目的。

我還嘗試將它包裝在 CMD 中,如下所示:

cmd /c shutdown.exe -r -t 50000 -m \\top34.top.local > c:\output.txt

但這也沒有產生任何結果。我也嘗試過雙>>(附加),但這沒有什麼區別。

我已經做了相當多的調查,看來 shutdown.exe 會將成功指令的輸出重定向到 stdout,但不會將失敗指令的輸出重新導向到 stdout。如何讓它將成功和失敗的命令重新導向到我的檔案?

運行 Windows 2012 R2

答案1

如何讓它 ( shutdown) 將成功和失敗的命令重新導向到我的檔案?

使用以下命令:

shutdown.exe -r -t 50000 -m \\top34.top.local > c:\output.txt 2>&1

請注意,應該2>&1第一個>重定向。


複製手柄

重定向&運算子將一個指定句柄的輸出或輸入複製到另一個指定句柄。例如,要將 dir輸出傳送到 File.txt 並將錯誤輸出傳送到File.txt,請鍵入:

dir > c:\file.txt 2>&1

來源使用命令重定向運算符

相關內容