tôi đã nhận được các lỗi sau đây và nghĩ đó là vì snapin đã được tải nhưng nó không có vẻ như vậy.
ERROR: The specified mount name 'vmstores' is already in use.
ERROR: The specified mount name 'vis' is already in use.
Giải pháp được cung cấp ở trên chắc chắn đơn giản hơn nhiều so với những gì tôi bắt đầu viết bên dưới.
Tôi cho rằng yếu tố đóng góp sẽ là tôi xem xét liệu snapin có được đăng ký trước không.
$snaps1 = Get-PSSnapin -Registered
$snaps2 = Get-PSSnapin *VMWare -ErrorAction SilentlyContinue
$vmsnap = 0
foreach ($snap1 in $snaps1) {
if ($snap1.name -eq "VMware.VimAutomation.Core") {
Write-Host "VM Snapin Registered..."
$vmsnap = 1
}
}
if ($vmsnap -eq 0) {
Write-Host "VMWare Snapin NOT Registered. Ensure the CLI is installed and available on machine."
}
if ($vmsnap -eq 1) {
foreach ($snap2 in $snaps2) {
if($snap2.name -eq "VMware.VIMAutomation.Core") {
Write-Host "VMware Snapin Already Loaded..."
$vmsnap = 2
}
}
}
if ($vmsnap -ne 2) {
Write-Host "Loading VMware Snapin..."
Add-PSSnapin VMware.VimAutomation.Core
}
đã cấp Tôi vẫn rất rất mới với cú pháp PS.
bản sao có thể có của [Cách kiểm tra xem snap-in PowerShell đã được tải chưa trước khi gọi Add-PSSnapin] (http://stackoverflow.com/questions/1477994/how-to-check-if-powershell-snap-in -is-already-loaded-before-calling-add-pssnapin) – JohnC