2013-07-15 57 views
0

我爲應用程序開發公司工作,但我在支持這方面。我正在運行腳本到遠程主機(logmein Rescue Technician Pro)。我們的客戶都運行Windows機器,我們支持的最老的操作系統版本是XP SP3和最新的win8。我需要一個windows本地的腳本語言,不需要任何下載或解壓縮。這些腳本是Powershell腳本,但我們都知道執行策略需要設置爲無限制。我需要一種腳本語言,可以自動執行鼠標點擊和擊鍵,例如敲擊鍵盤上的回車或在cmd/Powershell中輸入文字,然後敲擊回車。我試圖運行另一種語言的腳本來禁用Powershell中的excutionpolicy,然後從這一點開始啓動powershell腳本。我希望我已經解釋了我自己。Windows原生的腳本語言支持遠程用戶

更新:

我很壞,我想解釋我猜。我需要運行腳本來通過LOGMEIN RESCUE TECHNICIAN在遠程用戶上禁用ExecutionPolicy。 Logmein有一個名爲「SCRIPTS」的選項卡,可在您連接到遠程會話時自動啓動。問題是默認情況下PowerShell被設置爲受限制的executionpolicy。這不會允許我的腳本運行,我必須從我的機器上手動運行它們,我相信它們是一種只運行腳本並讓它們將結果提供給我的方式,而無需啓動遠程用戶GUI,所有計算機是他們自己的獨立機器,而不是域名。在啓動遠程會話時,我需要在遠程計算機上不受限制地運行腳本。這就是爲什麼我在圈子裏試圖解決這個問題。我可以從cmd中禁用powershell,但我需要按Enter鍵,我需要腳本輸入關鍵筆劃,但我再次運行塊運行我的腳本。現在我對此感到惱火。

回答

1

你可以這樣運行PowerShell腳本:

powershell -executionpolicy unrestricted -file "C:\Myscript.ps1" 

這不會改變全球executionpolicy整臺機器,但只是爲了運行該腳本。

+0

感謝您的迴應,但我可以在IES中創建PS腳本,然後通過logmein救援技術人員將其部署到遠程機器上?那不是打敗了執行政策的安全目的嗎?所以腳本不能在未知來源的主機上運行?我需要將其設置回來,以便其他人不能在機器上運行腳本也用於安全目的,但如果它那麼容易,那麼哇。爲了確保我理解執行策略可以使某些腳本有例外嗎?如果我能做到這一點,那麼我可以禁用整個執行策略,因爲那是我需要知道的。 –

+0

它只更改該單個腳本的執行策略。腳本運行後,它將變回默認(限制)。我不熟悉logmein救援,所以我無法幫助它。 –

+0

感謝您清理那個,我只是想圍繞這個 –

0

兩種選擇:

1.貼上PowerShell。當您啓動PowerShell的,而不是從快捷方式啓動,(無論是從命令提示符,或運行命令)運行以下命令:

powershell.exe -ExecutionPolicy ByPass 

這將設置爲繞過執行模式下運行的PowerShell。

2.使用適用於所有版本Windows,VB腳本的舊腳本編寫方法。 (雖然使用PowerShell後,VB腳本很難回去)

+0

感謝您的響應,因此我可以在腳本開始時在PowerShell IES中運行創建。 powershell.exe -ExecutionPolicy ByPass 然後這將允許我將腳本部署到機器上,但我需要將其設置回來,如果它很容易禁用它或通過它,那麼似乎是一個很大的安全問題。 Logmein救援技術人員有一個腳本按鈕,可讓您在首次啓動會話時運行腳本。我需要將整個過程自動化以節省時間。感謝您的幫助 –

+0

這將啓動PowerShell提示並將執行策略設置爲ByPass。它不會永久更改機器的執行策略。如果你需要運行腳本,@ Kevin的帖子可能是你想要做的最接近的事情。 – HAL9256

0

我真的會用JScript(或VBScript,但JScript是一個更好的語言恕我直言),因爲你不想要在遠程機器上安裝任何東西。 XP不包括PowerShell,所以你必須在某個時候安裝它。

WSH(Windows腳本宿主)語言(如VBScript和JScript)和PowerShell都可以模擬鼠標點擊和擊鍵,但是如果您想要一個可以在所有這些平臺上運行的腳本,我們需要堅持使用WSH語言。

如果您可以控制在遠程系統上安裝的內容,不過,請使用PowerShell,或者 - 至少確保Windows Scripting Host組件與該平臺的最新版本保持同步。我不確定這是否會成爲典型的Windows更新的一部分。

只是我的0.02美元。