PowerCLI腳本批量和一些常用自動化操作腳本
阿新 • • 發佈:2018-08-02
user res https cor continue don pla redo 命令 一、使用指定模板批量創建虛擬機
#定義參數 param( [string]$VMname,[string]$vmhostname,[string]$datastore, [string]$template ) #在命令窗口中添加powercli模塊 try{ add-pssnapin vmware.vimautomation.core -ErrorAction SilentlyContinue } catch{} #連接Vsphere Connect-VIServer -server Vsphere -Protocol https -User user -Password password foreach ($i in 1..5) { $fullname = $VMname +"-"+ $i new-vm -name $fullname -template $template -host $vmhostname -datastore $datastore } disconnect-viserver -confirm:$false 執行文件時 .\scriptfile.ps1 VMname vmhost datastore template #不聲明參數時,必須按照param指定的順序輸入參數 or .\screptfile.ps1 -VMname vmname -template template -vmhostname vmhost -datastore datastore #對參數聲明時,參數順序可隨意變動
二、批量重啟正在運行具有名字相似可以進行匹配的的虛擬機
#在命令窗口中添加powercli模塊 try{ add-pssnapin vmware.vimautomation.core -ErrorAction SilentlyContinue } catch{} #連接Vsphere Connect-VIServer -server Vsphere -Protocol https -User user -Password password #定義正則表達式 $matchname="^[a-zA-Z]+\d{5}([a-zA-Z]{1,4})?(\w)?([a-zA-Z]{3})?(\d+)?" #重啟匹配的虛擬機 Get-Cluster -Name cluster |Get-VM |where {$_.Name -match $matchname -and $_.PowerState -eq "PoweredOn"} | Restart-VM -RunAsync disconnect-viserver -confirm:$false
PowerCLI腳本批量和一些常用自動化操作腳本