簡體   English   中英

如何在靜默/隱藏模式下使用任務調度程序運行powershell腳本?

[英]How to run powershell script using task scheduler in silent/hidden mode?

我正在嘗試使用任務計划程序運行powershell腳本,它會彈出PowerShell cmd窗口。 有沒有辦法在運行腳本時禁用它? 我在powershell v5.0上

我已經嘗試過-WindowStyle Hidden但仍會彈出PowerShell cmd窗口。

歡迎任何指導。

謝謝。

由於powershell.exe是一個控制台程序,如果沒有出現它的控制台窗口,你就無法正常執行它(雖然你可以在啟動后不久使用-WindowStyle Hidden ,正如你所注意到的那樣)。

訣竅是在隱藏狀態下執行powershell.exe 本身 一種方法是使用WshShell對象的Run方法從WSH腳本內部隱藏運行PowerShell命令行,並使用wscript.exe (不是控制台程序,因此不顯示控制台窗口)執行WSH腳本。 示例腳本(JScript):

var wshShell = new ActiveXObject("WScript.Shell");
wshShell.Run('%SystemRoot%\\system32\\WindowsPowerShell\\v1.0\\powershell.exe -ExecutionPolicy Bypass -File "C:\\Scripts\\My Script.ps1"', 0, false);

如果此腳本是C:\\Scripts\\My Launcher.js ,您現在可以運行以下命令行:

wscript "C:\Scripts\My Launcher.js"

這將在沒有控制台的情況下運行啟動程序腳本,然后控制台在隱藏窗口中運行PowerShell命令( Run方法的第二個參數為0 )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM