1
我有一個保存在.cmd
文件中的PowerShell腳本,該文件從Web下載文件,然後將其解壓縮。我的天藍色網絡角色在啓動時執行它。這是腳本:Powershell腳本適用於遠程訪問,但不適用於Azure啓動任務
powershell -ExecutionPolicy Bypass -c $(New-Object Net.WebClient).DownloadFile('URL.zip', 'FILE.zip') ;
(New-Object -com shell.application).namespace('c:\FOLDER').Copyhere((New-Object -com shell.application).namespace('FILE.zip').items())
當我通過Azure的啓動任務運行腳本: 腳本的第一部分工作。該文件已下載。解壓縮腳本的第二部分不運行。
當我通過命令行運行腳本時,遠程進入虛擬機: 整個腳本運行。
因此我知道這不是一個語法錯誤。我可以想到上述兩種情況之間的唯一區別是權限問題。但是,我正在運行powershell並將-ExecutionPolicy設置爲Bypass,這是最高的權限級別。任何人有任何想法?謝謝!
你能告訴我們你的服務配置中運行啓動任務的行是什麼樣的嗎? – Frans
你能找到問題嗎?我有一個類似的問題,我運行一個腳本來解壓縮文件,它在我在服務器上手動運行該進程時運行,但是當自動進程運行時它不運行,它甚至不會引發異常,它只會干擾't解壓我的文件 – Jupaol
@Jupaol,我相當肯定這是一個你無法繞過的權限級別。我的解決方案是讓啓動腳本啓動一個控制檯應用程序,爲我解壓縮。這樣可行。祝你好運! – carlbenson