Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 正在获取PowerShell中的卷号_Windows_Powershell_Powershell 3.0 - Fatal编程技术网

Windows 正在获取PowerShell中的卷号

Windows 正在获取PowerShell中的卷号,windows,powershell,powershell-3.0,Windows,Powershell,Powershell 3.0,我正在运行PS cmdletget customcmdlet,它正在生成以下输出 Name FreeSpaceGB ---- ----------- ABC-vol001 1,474.201 ABC-vol002 2,345.437 ABC-vol003 3,147.135 rando

我正在运行PS cmdlet
get customcmdlet
,它正在生成以下输出

Name                         FreeSpaceGB
----                         -----------
ABC-vol001                   1,474.201
ABC-vol002                   2,345.437     
ABC-vol003                   3,147.135
random-value                 4,147.135

我想从最高<代码>卷号< /COD> <代码> ABC-VAL03捕获< <代码> 003 >代码>我也要忽略<代码>随机值< /> >,只考虑在

中有<代码> vOL<代码>的值。
get-customcmdlet | select Name 

Name              
----          
ABC-vol001   
ABC-vol001      
ABC-vol001
random-value

在这里,我希望
003
根据最高卷数变化您可以进行自定义排序,并选择最后一项,如:

Get-CustomCmdlet | Sort {$_.Name -replace '.*?(\d+)$','$1'} | Select -Last 1
编辑:看起来您已经知道如何使用
Where
,因为在编辑之前您的问题中已经有了它,但是您可以使用它来仅获取名称中包含“vol”的卷,然后对它们进行排序

Get-CustomCmdlet | Where{$_.Name -match '-vol\d+'} | Sort {$_.Name -replace '.*?(\d+)$','$1'} | Select -Last 1

您可以进行自定义排序,然后选择最后一项,如:

Get-CustomCmdlet | Sort {$_.Name -replace '.*?(\d+)$','$1'} | Select -Last 1
编辑:看起来您已经知道如何使用
Where
,因为在编辑之前您的问题中已经有了它,但是您可以使用它来仅获取名称中包含“vol”的卷,然后对它们进行排序

Get-CustomCmdlet | Where{$_.Name -match '-vol\d+'} | Sort {$_.Name -replace '.*?(\d+)$','$1'} | Select -Last 1

谢谢我对我的问题做了一个小的更新。你能不能相应地回答这个问题?没有太多的补充,但你也可以使用
-降序|选择-第一个1
。我将获得
随机值4147.135
作为输出。我想忽略所有
随机值
,只包括itI中具有
vol
的值。我可以通过使用
选择名称|其中对象名称-匹配vol
来实现这一点,谢谢!我对我的问题做了一个小的更新。你能不能相应地回答这个问题?没有太多的补充,但你也可以使用
-降序|选择-第一个1
。我将获得
随机值4147.135
作为输出。我想忽略所有
随机值
,只包括itI中具有
vol
的值。我可以通过使用
选择名称|其中对象名称-匹配vol