PowerShell CLI 获取VM信息

豆子最近接管了一些ESXi 5.0,上面有很多虚拟机,不过这些虚拟机的SCSI的驱动很多都还在使用旧版本比如LSIBasci,LSISAS等等。我希望把他们都更新到ParaVirtual的驱动,更新方式很简单,手动添加一个硬盘和SCSI驱动器,选择ParaVirtual,等操作系统识别出硬盘以后就表示驱动已经自动安装了,那么删除这个新硬盘并修改启动盘的驱动器类型就行了。


不过首先 我得先获取所有VM的SCSI和操作系统的类型才方便下一步的操作。


连接VCenter很容易,下载对应的PowerCli,然后添加Snappin就行。如果懒得每次执行,可以在powershell profile里面配置每次启动ISE自动加载。

    Add-PSSnapin VMware.VimAutomation.Core


然后连接VCenter,就可以查看类型了。语句本身没啥好说的,我用了个tee来保存变量,这样我可以同时在屏幕上也看见结果。最后导出结果。

Connect-viserver sydvcs2012
get-VM | select version,Name, powerstate, numcpu, Memorygb, @{N="IP Address";E={@($_.guest.IPAddress[0])}},@{n="OS";e={$_.guest.osfullname}}, @{n="scsi";e={(Get-ScsiController $_.name).type}} | 
tee -variable result
$result | sort scsi | Export-Csv C:\temp\mel.csv -NoTypeInformation
Disconnect-VIServer


wKiom1bY1knRRZtOAAD4EnyHjfU539.png



值得一提的是get-vm刚开始的时候出了些小问题,因为我同时安装了hyper-v的模块,hyper-v也有get-vm这个命令。有的时候powershell会迷糊我到底需要哪个模块的指令。


wKioL1bY1laQ_p_XAAAXV2S_PI8584.png


如果为了避免混淆,需要把模块名字前缀上去就不会有冲突了


wKiom1bY1d2RoGNXAABLUdTLKKA899.png


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值