[英]How can I run a powershell script as a background task without displaying a window?
我正在創建一個腳本,該腳本將觸發性能計數器並將其存儲在.csv文件中,並在文件太大時滾動。 從powershell提示符或ISE(我正在運行v.2 / win Server 2008)運行腳本可以正常工作,並且文件運行正常。
但是,當我嘗試使用以下cmd提示符行執行命令時(即使嘗試在cmd上使用/ k開關),命令提示符也會立即關閉,並且文件未運行。
powershell.exe -windowstyle hidden {iis_test.ps1}
我也嘗試了以下操作,盡管我看到Powershell並沒有停止(我通過任務管理器對其進行監視,正在尋找Powershell.exe來顯示),但是我沒有看到正在創建的文件。
powershell.exe -noexit -windowstyle hidden {iis_test.ps1}
我也沒有看到任何可能的位置(事件查看器,命令提示符窗口本身)中捕獲的任何錯誤。
有任何想法嗎? 最終,我的目標是讓vb winforms調用這些腳本文件,並且自然地,我認為弄清楚命令提示符命令會有所幫助。 請注意 ,此腳本可移植並在任何Windows 2008 Server系統上運行都是非常重要的(因此,我需要遠離需要進一步安裝的第三方實體)。
編輯:我需要使用-file參數來指定要運行的文件。
從DOS / CMD shell嘗試一下:
powershell.exe -windowstyle hidden -file C:\iis_test.ps1
Powershell.exe -windowstyle hidden -file C:\iis_test.ps1
但是,當您運行此命令時,將顯示CMD窗口。
但是,您可以改用VBscript
Set objShell = CreateObject("WScript.Shell")
objShell.Run "CMD /C START /B " & objShell.ExpandEnvironmentStrings("%SystemRoot%") & "\System32\WindowsPowerShell\v1.0\powershell.exe -file " & "YourScript.ps1", 0, False
Set objShell = Nothing
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.