windows Hyper-V Server 2012创建脚本运行环境
一個(gè)PowerShell腳本其實(shí)就是一個(gè)簡(jiǎn)單的文本文件,這個(gè)文件包含了一系列PowerShell命令,每個(gè)命令顯示為獨(dú)立的一行,PowerShell腳本文件擴(kuò)展名為.PS1。那么,是不是可以在PowerShell環(huán)境下直接可以運(yùn)行.PS1文件?
? ?在PowerShell環(huán)境下,是不能直接運(yùn)行.PS1文件的。這是為防止惡意腳本的執(zhí)行,PowerShell的一個(gè)默認(rèn)執(zhí)行策略,這個(gè)執(zhí)行策略被設(shè)為受限的(Restricted),意味著PowerShell腳本無(wú)法執(zhí)行,它每次只能執(zhí)行一行命令。
通過(guò)一個(gè)命令來(lái)查看當(dāng)前的策略:Get-ExecutionPolicy –List
本地默認(rèn)策略被設(shè)為受限的(Restricted).
用下面命令方法可以修改這個(gè)默認(rèn)策略:
Set-ExecutionPolicy <policy name> ? ?這個(gè) <policy name>等于(Restricted;AllSigned;RemoteSigned;Unrestricted;Bypass;Undefined),下面是微軟對(duì)這些<policy name>的定義:
Windows PowerShell 執(zhí)行策略如下: ?
"Restricted"是默認(rèn)策略。 ? ? ? ?
?Restricted ? ? ? ? ?
?- 默認(rèn)執(zhí)行策略。 ? ? ? ? ?
?- 允許單個(gè)命令運(yùn)行,但不能運(yùn)行腳本。 ? ? ? ? ?
?- 阻止所有腳本文件的運(yùn)行,包括格式和配置文件 (.ps1xml)、模塊腳本文件 (.psm1) ? ? ? ? ? ? ?和 Windows PowerShell 配置文件 (.ps1)。
AllSigned ? ? ? ? ? ?
?- 可以運(yùn)行腳本。 ? ? ? ? ?
?- 要求所有腳本和配置文件由可信發(fā)布者簽名,包括在本地計(jì)算機(jī)上編寫(xiě)的腳本。 ? ? ? ? ?
?- 在運(yùn)行來(lái)自尚未分類(lèi)為可信或不可信發(fā)布者的腳本之前進(jìn)行提示。 ? ? ? ? ? ?
?- 運(yùn)行來(lái)自 Internet 以外的源的未簽名腳本及已簽名但有惡意的腳本存在風(fēng)險(xiǎn)。
RemoteSigned ? ? ? ? ?
?- 可以運(yùn)行腳本。 ? ? ? ? ? ?
?- 要求可信發(fā)布者對(duì)從 Internet(包括電子郵件和即時(shí)消息程序)下載腳本和配置文件進(jìn)行數(shù)字簽名。 ? ? ? ? ?
?- 不要求對(duì)已經(jīng)運(yùn)行和已在本地計(jì)算機(jī)編寫(xiě)的腳本(不是從 Internet 下載的腳本)進(jìn)行數(shù)字簽名。 ? ? ? ? ? ?
?- 面臨運(yùn)行已簽名但有惡意的腳本帶來(lái)的風(fēng)險(xiǎn)。
Unrestricted ? ? ? ? ?
- 可以運(yùn)行未簽名腳本。(面臨運(yùn)行惡意腳本所帶來(lái)的風(fēng)險(xiǎn)。) ? ? ? ? ?
- 在運(yùn)行從 Internet 下載的腳本和配置文件之前警告用戶。 ? ? ? ?
Bypass ? ? ? ? ? ?
- 不阻止任何執(zhí)行項(xiàng),不顯示警告和提示。 ? ? ? ? ?
- 此執(zhí)行策略設(shè)計(jì)用于兩種配置:一種是 Windows PowerShell 腳本內(nèi)置于一個(gè)較大的應(yīng)用程序中; ? ?一種是 Windows PowerShell 成為擁有自身安全模型的某個(gè)程序的基礎(chǔ)。
Undefined ? ? ? ? ?
?- 當(dāng)前作用域中未設(shè)置執(zhí)行策略。 ? ? ? ? ? ?
?- 如果所有作用域中的執(zhí)行策略為 Undefined,則有效執(zhí)行策略為 Restricted,該策略是默認(rèn)執(zhí)行策略。
注意:在不對(duì)通用命名約定 (UNC) 路徑與 Internet 路徑加以區(qū)分的系統(tǒng)上,可能無(wú)法使用 ? ? ? ? ? RemoteSigned 執(zhí)行策略來(lái)允許運(yùn)行由 UNC 路徑標(biāo)識(shí)的腳本。一般情況下,如果您對(duì)自己所寫(xiě)的腳本文件的把握,可以執(zhí)行下面命令:
? ?Set-ExecutionPolicyUnrestricted 查看執(zhí)行情況:Get-ExecutionPolicyLocalMachine可以用Windows Server 2012 自帶的的PowerShell ISE編輯器來(lái)編輯一個(gè).PS1文件來(lái)驗(yàn)證:這樣就可以在powershell中運(yùn)行相關(guān).ps1jiaob
這樣就可以在powershell中運(yùn)行.ps1相關(guān)腳本了。
轉(zhuǎn)載于:https://blog.51cto.com/hao360/1352194
總結(jié)
以上是生活随笔為你收集整理的windows Hyper-V Server 2012创建脚本运行环境的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: VS2005的depends工具 (分析
- 下一篇: Sublime Text 2 入门技巧