使用比较运算符”like”过滤当前应用的数组, 这里可以用比较运算符结合控制台命令匹配出所有条件。
这个例子将使用”netstat.exe”得到仅包含”established”状态的网络连接,接着又获得包含”established”状态和名字为”stor”的信息,接着再使用命令”ipconfig”去获得当前的IPV4地址:
这个技巧使用“@()”来确保控制台命令得到的结果始终是一组集合。
原文地址: Filtering Text-Based Command Output
本文链接: https://www.pstips.net/filtering-text-based-command-output.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
是不是和版本有关系,4.0 里面命令行程序默认返回的就是字符串数组。原文评论里也提到了这个问题
是的,类似于netstat和ipconfig等这样的命令,默认都是返回的是字符串数组。
大多数情况你可以这样去做,但是实际上是如果条件只有唯一的一条,这时如果你没强制结果没数组,那么这个结果就是字符串了。当然在控制台命令中,我们几乎看不到只有一条返回结果的输出了。但是保险起见,我们还是要强制它为数组。
有道理,呵呵!!!
@(ipconfig) -like ‘*IPv4*’ | Select-Object{$_.Substring($_.IndexOf(“:”)+1)}
(@(ipconfig) -like ‘*IPv4*’ | Select-Object{$_.Substring($_.IndexOf(“:”)+1)})[0]
要简练,这样也行:(ipconfig) -match ‘IPv4’ -split ‘: ‘ | select -Last 1
192.168.1.4 192.168.88.1 192.168.153.1 --------------192.168.153.1
大哥,你那机器上配置了那么多IP啊
VMware Workstation .