適用于:Windows PowerShell 2.0, Windows PowerShell 3.0
當我們打開一個PowerShell對話框,并在里面創(chuàng)建一些變量(variables)、函數(shù)(functions)時,這些變量、函數(shù)均只在當前會話中有效。一旦我們關(guān)閉這個對話框重新打開PowerShell時,這些變量都不存在了。如果我們想保留這些設置,我們就需要用到profile,翻譯過來就是配置文件。在PowerShell啟動的時候,會自動導入配置文件里面的設置。這有點像autorun.bat,如果有dos系統(tǒng)還有印象的朋友,應該知道這個。
配置文件存放于如下幾個地方,不同的配置文件,作用域不同。
1、%windir%\system32\WindowsPowerShell\v1.0\profile.ps1
它作用于所有用戶、所有的Shell。
2、%windir%\system32\WindowsPowerShell\v1.0\ Microsoft.PowerShell_profile.ps1
作用于所有用戶,但只作用于Microsoft.PowerShell這個shell。這個我也沒懂是什么意思,難道還有不是PowerShell的PowerShell shell?呃,有點像繞口令。
3、%UserProfile%\My Documents\WindowsPowerShell\profile.ps1
作用于當前用戶的所有shell。
4、%UserProfile%\My Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
作用于當前用戶的Microsoft.PowerShell這個shell。
以上的Windows的PowerShell profiles不是自動創(chuàng)建的。言下之意是,如果要用,我們就自己去創(chuàng)建。我們只要按照上面給出的文件路徑和文件名,編寫我們自己的內(nèi)容進去即可。
有一個變量:$profile,它保存了當前Profile的路徑。使用Test-Path $profile可以查看當前有沒有這個文件。如果沒有,可以使用new-item -path $profile -itemtype file -force命令來創(chuàng)建它。然后再使用notepad $profile來快捷的打開它來編輯。我們在里面輸入function pro { notepad $profile },呵呵明眼人都懂了,以后我們想要修改profile的時候,直接運行pro命令就可以了。
最后,想要PowerShell啟動時能成功的載入配置文件,還需要在PowerShell的Execution Policy(執(zhí)行策略)中設置允許它這樣做。否則,嘗試載入配置文件將會失敗,PowerShell界面上也會顯示錯誤信息。無法加載配置文件的錯誤提示如下:
復制代碼 代碼如下:
C:\Users\Hong>powershell
Windows PowerShell
版權(quán)所有(C) 2012 Microsoft Corporation。保留所有權(quán)利。
. : 無法加載文件 C:\Users\Hong\Documents\WindowsPowerShell\Microsoft.PowerShell
_profile.ps1,因為在此系統(tǒng)上禁止運行腳本。有關(guān)詳細信息,請參閱 http://go.micros
oft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。
所在位置 行:1 字符: 3
+ . 'C:\Users\Hong\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
'
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~
+ CategoryInfo : SecurityError: (:) [],PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess
其實解決這個問題跟解決執(zhí)行ps1文件的方法一樣,因為這個Profile其實也是一個ps1格式的文件。所以使用Set-ExecutionPolicy RemoteSigned即可。
參考文章:http://msdn.microsoft.com/en-us/library/bb613488%28VS.85%29.aspx
您可能感興趣的文章:- SpringBoot激活profiles的幾種方式
- Spring Boot配置特定屬性spring.profiles的方法
- 詳解Spring Boot Profiles 配置和使用
- Java使用路徑通配符加載Resource與profiles配置使用詳解
- 淺談xml配置spring profiles的幾個注意點
- 使用spring.profiles.active來分區(qū)配置的方法示例
- Xcode 下刪除Provisioning Profiles文件詳細介紹
- spring boot實現(xiàn)profiles動態(tài)切換的示例