Windows
在 MDT 2013 中將 PowerShell 腳本作為應用程序執行
有沒有辦法讓 powershell 腳本在應用程序列表下執行,這樣當您從 MDT 映像安裝時,您可以選擇要執行的腳本?
我可以將腳本作為腳本正常執行,但我嘗試過的每次嘗試都不會執行腳本。
這就是我試圖這樣做的方式,但他們沒有執行。(我連結到任務序列下的安裝應用程序下的腳本。到目前為止,我得出的結論是,微軟不允許 PowerShell 腳本以這種方式工作而沒有一些嚴重的黑客攻擊。
編輯:
因此,在嘗試了幾種方法並進行了研究之後,這就是我現在所擁有的:
我正在嘗試這個:
powershell -noexit "& "'\\SERVER.com\ImageDeploymentShare$\Scripts\script_tes_2t.ps1'
工作目錄是:
.\%SCRIPTROOT%
但我得到了這個:
我在technet上看到過類似的東西,但這肯定是極端的嗎?
Filename RunPowerShell.cmd Powershell -Command Set-ExecutionPolicy Unrestricted Powershell.exe -file "%~dp0%1" Powershell -Command Set-ExecutionPolicy AllSigned Filename App1.ps1 Dir Execute this with [fulle_Path_if_needed\]RunPowerShell.cmd App1.ps1
我不了解 MDT,但從命令行執行位於 UNC 的 PowerShell 腳本類似於
powershell -ExecutionPolicy bypass -file \\path\to\file.ps1
.它從 cmd 工作(沒有任何安全提示):
在應用程序的“安靜安裝命令”中:
powershell.exe -executionpolicy bypass -noprofile -noninteractive -file ".\[yourscriptfile].ps1"
僅將 ps1 文件作為命令存在的主要問題是執行策略,因為預設值受到限制。即使將執行策略更改為遠端簽名腳本也不會執行,因為它是 UNC 路徑。