PowerShell获取特定“描述”的虚拟机IP地址

简介:

首先我们来说说需求:某个用户创建了一些虚拟机,我们通过Get-SCIPAddress是可以得到特定名称的虚拟机,但是,如果我们希望从某个描述来批量获得虚拟机的IP,这个时候通过“管道”和“直接的命令”是无法获取的。

这个时候,就需要用到循环。

比如下面这个例子,虚拟机的get-vm所获得的描述部分,最下面这些“xxxx新机器到位后要求16G这些字符”,而使用Get-SCIPAddress的描述部分则是get-vm的名称部分。所以我们这里需要用到一个相同的属性,那就是get-vm的名称部分,和Get-SCIPAddress的描述部分。通过两个命令连查,得到结果。


wKioL1V-eMSx95GjAAM5RkfMuEQ532.jpg


废话不多说,直接上脚本

1
2
3
4
5
6
7
8
9
10
11
Import-Module  virtualmachinemanager
$vvm  = Get-SCIPAddress  |where  { $_ .Description  -like  "边塞之城*" } |select  name,Description
$vcb  get-vm |where  { $_ .Description  -like  "*李寻欢*" } |select  Name
foreach  $cb  in  $vvm )
{   
     foreach  ( $ccb  in  $vcb )
     {
     if  ( $cb .description  -eq  $ccb .name)
         {echo  $cb  }
      }
       }

实际上面的脚本做的工作稍显复杂,它首先使用Get-SCIPAddress where选择了一下,描述部分有类似边塞之城的属性,接下来在get-vm的描述部分,搜索一下具有名称李寻欢的部分


接下来进入一个循环,查找两个命令中描述和名称相同的部分,然后打印出来。通过两个嵌套循环实现。


事实上,以上的foreach语句可以用更简单的语句来实现


1
2
3
  foreach  ( $cb  in  $vvm )
  if  ( $_ .cb.description  -eq  $_ .ccb.name)
         {echo  $cb  }}

这里其实就是通过了$_.函数的方法缩减了输入的字符,两种方法前面的更便于阅读,第二种在熟练的前提下,也更简洁。




本文转自 九叔 51CTO博客,原文链接:http://blog.51cto.com/jiushu/1662030,如需转载请自行联系原作者

相关文章
|
2月前
|
虚拟化
vmware克隆虚拟机后没有ip地址的问题
解决vmware克隆虚拟机后没有内网ip的问题
|
10天前
|
Linux 虚拟化
VMware workstation 中centos7虚拟机在nat模式下怎么配置网卡,指定我想要的IP并且可以联网
https://blog.csdn.net/2302_78534730/article/details/132825156?spm=1001.2014.3001.5502
131 0
|
2月前
|
网络协议 Linux 虚拟化
修改虚拟机ip为静态ip
centos修改ip为静态ip
|
3月前
|
Linux 虚拟化
Linux虚拟机不显示IP地址的解决办法
Linux虚拟机不显示IP地址的解决办法
90 0
|
3月前
|
网络协议 Linux Windows
Linux虚拟机设置固定IP
Linux虚拟机设置固定IP
39 2
|
9月前
|
Linux
Centos7虚拟机下载安装以及静态IP地址的设置(基于VmwareWorkstation)(一)
Centos7虚拟机下载安装以及静态IP地址的设置(基于VmwareWorkstation)
373 0
|
3月前
|
监控 算法 Java
垃圾回收机制与性能调优:描述Java虚拟机(JVM)的垃圾回收算法,并解释为什么需要这些算法。如何使用Java内存分析工具(如VisualVM、JConsole或MAT)来识别和解决内存泄漏问题?
垃圾回收机制与性能调优:描述Java虚拟机(JVM)的垃圾回收算法,并解释为什么需要这些算法。如何使用Java内存分析工具(如VisualVM、JConsole或MAT)来识别和解决内存泄漏问题?
28 1
|
5月前
|
API 网络架构
虚拟机绑定浮动ip只能选择同一个路由器上的吗
在虚拟网络环境中,绑定浮动IP通常是与路由器相关的操作。虚拟机绑定浮动IP时,通常是通过路由器将浮动IP映射到虚拟机的内部IP地址。 在一些云平台中,浮动IP地址通常与特定的路由器相关联。因此,如果你想要将浮动IP绑定到虚拟机,通常需要选择与该虚拟机所在的VPC(虚拟私有云)或子网相关联的路由器。 具体来说,通常有以下步骤: 1. **选择浮动IP:** 在云平台的控制台或使用相关API时,选择要绑定的浮动IP。 2. **选择路由器:** 在绑定浮动IP时,通常需要选择一个路由器,将浮动IP与该路由器相关联。 3. **选择虚拟机:** 然后,你需要选择要将浮动IP绑定到的虚拟机。
622 1
|
5月前
|
Linux 开发工具
Linux调整虚拟机ip地址
Linux调整虚拟机ip地址
130 0
|
5月前
|
Linux 开发工具
Linux调整虚拟机ip地址
Linux调整虚拟机ip地址
51 1

热门文章

最新文章