设为首页 收藏本站
查看: 1010|回复: 0

微软私有云分享(R2)16PowerShell查看虚拟机信息

[复制链接]

尚未签到

发表于 2018-9-2 14:38:11 | 显示全部楼层 |阅读模式
  微软私有云交流群【236804566】,技术分享成就梦想
  欢迎关注新浪微博 @肥九叔
  今天在群里面看到有同学问到,SCVMM能不能统一导出一份报表给客户看,当然这是可以的,不过基本非常依赖SQL,要写SQL语句。 当然,用PowerShell也可以实现差不多的功能,本人技术非常一般,下面脚本对我来说还是比较好用的。 首先PowerShell输出Hyper-V主机的条目信息是这样的
  Get-VMNetworkAdapter -all
  这个命令输出的结果有多悲剧我就不说了,东西太多。 所以我很机智的加了一些东西,”|”是管道的作用,把结果输出到后面的参数,后面的意思是只输出虚拟机名称和IP地址。
  Get-VMNetworkAdapter -all | Select-Object VMname,IPAddresses | Format-Table
  既然已经很机智了,再来一点吧
  Get-VMNetworkAdapter -all | Select-Object VMname,IPAddresses | Format-Table >>\192.168.15.194d$33.csv
  直接将内容输出到一个共享文件夹的.csv文件中。 ===========更高档的来了?====================== 用下面这个句子,可以一次输出三台主机的IP地址和虚拟机名称列表,名称为目标主机的d盘下的以主机名为名称的.csv,这时候注意下,输出结果是分散在不同主机上的。
  Invoke-Command -ComputerName hahv1,hahv2,hahv3 -Command{Get-VMNetworkAdapter -all | Select-ObjectVMname,IPAddresses | Format-Table > d:$env:COMPUTERNAME.csv}
  我们总结一下,写一个.ps1文件,也就是PowerShell的批处理脚本
  Invoke-Command -ComputerName hahv1,hahv2,hahv3 -Command{Get-VMNetworkAdapter -all |Select-Object VMname,IPAddresses | Format-Table > d:$env:COMPUTERNAME.csv} #导出IP地址
  #这下面三个copy是啥意思呢?拷贝不同主机上的文件到运行脚本的D盘
  copy \hahv1d$hahv1.csv d:
  copy \hahv2d$hahv2.csv d:
  copy \hahv3d$hahv3.csv d:
  #PowerShell中运行cmd命令不太方便,因为cmd命令有一些和PowerShell差不多,但是功能不一样,所以用ech写入一条命令,就是将本地的csv文件组合一下,附加到一个叫做cp.cmd的文件中
  echo “copy *.csv hv.csv /y” >d:/cp.cmd
  d:
  #运行这个拷贝,结束
  .cp.cmd
  还有很机智的小伙伴说,原来PowerShell里面可以运行cmd啊,是啊没错,不过你如果不是.xxx.cmd这种方式运行,程序就跑到cmd里面,回不到ps了,后续内容不执行,非常悲剧。
  另外echo “copy *.csv hv.csv /y” >d:/cp.cmd 这种方法其实是错的,正确的是下面的!!
  echo “asdf3434sdsf3434df” |Out-File d:/11.txt -Encoding Default -Append
  你要问为什么这么写,是因为一行没什么事儿,多了的话,这乱码问题解决不了啊。 另外这种方式还有一个机智的地方,它是追加写入的,就是这命令你输入一次,他追加一行。 如果你想保证脚本干净,记得运行前来一个del cp.cmd 只有这样才会创建新的文件。
DSC0000.png

  ================下面内容是白送的=========================== 依然是报错一小波
  Id10619,这个问题出错实在是太机智了。比如你VHD模板里面的管理员用户名是administrator,但是你在VM模板中想把管理员设置成admin,很遗憾,这不行。 如果你拿到的是别人做给你的VHD,你的好***很邪恶的修改了administrator的名称,变成了xyz,那么你正常部署必然会失败。 DSC0001.png
  Id802,被其他人使用中,这个毫无办法,重启vmm服务器解决(其实是库服务器上的文件被其他人使用,但是重启VMM是有效的。) DSC0002.png
  Id2904找不到路径,这个问题是这样的,你想把虚拟机部署到目标主机的D:HYPERV目录下,但是,但是,你必须要提前创建这个目录才可以。 DSC0003.png


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-561692-1-1.html 上篇帖子: 利用PowerShell创建事件日志 下篇帖子: PowerShell 远程管理之启用和执行命令
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表