问题
On my PowerShell shortcut I have the following:
C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe -psc "C:\Program Files (x86)\VMware\Infrastructure\vSphere PowerCLI\vim.psc1" -noe -c ". \"C:\Program Files (x86)\VMware\Infrastructure\vSphere PowerCLI\Scripts\Initialize-PowerCLIEnvironment.ps1\""
Yet, I would prefer to add the registration of snapins and to run the init of the PowerCLI environment to my profile.
So in my profile I add the following:
Add-PSSnapin VMware.VimAutomation.Core
& "C:\Program Files (x86)\VMware\Infrastructure\vSphere PowerCLI\Scripts\Initialize-PowerCLIEnvironment.ps1"
Yet, the Get-VICommand is no longer available using this method. Why?
回答1:
PSC1 files are "PowerShell Console files." They are XML configuration files that tell PowerShell which snapins to load automatically. The other way to do that would be to call Import-Module
or Add-PSSnapin
in your Profile.ps1
script.
You can create your own psc1 files using Export-Console
.
回答2:
Try like this:
add-pssnapin VMware.VimAutomation.Core
. 'C:\Program Files (x86)\VMware\Infrastructure\vSphere PowerCLI\Scripts\Initialize-PowerCLIEnvironment.ps1' # dot sourcing!
来源:https://stackoverflow.com/questions/7502019/so-what-is-special-about-powershell-psc1-files