Windows
在沒有視窗的計劃任務中執行 .bat 文件
robocopy
我有一個計劃任務,它啟動一個每小時執行的批處理腳本。每次執行時,桌面上都會彈出一個帶有 robocopy 輸出的視窗,我真的不想看到。我設法通過使計劃的作業執行來使視窗最小化
cmd /c start /min mybat.bat
但這每小時都會給我一個新的命令視窗。鑑於“執行字元串指定的命令然後終止”,我對此感到驚訝
cmd /c
- 我一定誤解了文件。有沒有辦法在不彈出 cmd 視窗的情況下執行批處理腳本?
您可以改用 Windows 腳本文件以靜默方式執行它。執行方法允許您在不可見模式下執行腳本。創建一個
.vbs
像這樣的文件Dim WinScriptHost Set WinScriptHost = CreateObject("WScript.Shell") WinScriptHost.Run Chr(34) & "C:\Scheduled Jobs\mybat.bat" & Chr(34), 0 Set WinScriptHost = Nothing
並安排它。此範例中的第二個參數設置視窗樣式。0 表示“隱藏視窗”。
Run 方法的完整語法:
object.Run(strCommand, [intWindowStyle], [bWaitOnReturn])
論據:
- 對象:WshShell 對象。
- strCommand:字元串值,指示要執行的命令行。您必須包含要傳遞給執行檔的任何參數。
- intWindowStyle:可選。指示程序視窗外觀的整數值。請注意,並非所有程序都使用此資訊。
- bWaitOnReturn:可選。布爾值,指示腳本是否應等待程序完成執行,然後再繼續執行腳本中的下一條語句。如果設置為 true,腳本執行將暫停,直到程序完成,並且 Run 返回程序返回的任何錯誤程式碼。如果設置為 false(預設),則 Run 方法在啟動程序後立即返回,自動返回 0(不被解釋為錯誤程式碼)。