剥离 PS 中的值并比较它是否为整数值



我正在运行PS cmdletget-customcmdlet,它正在生成以下输出

Name                         FreeSpaceGB
----                         -----------
ABC-vol001                   1,474.201

我有另一个变量$var=vol现在,我想去掉001,并想检查它是否是整数。

我正在使用但得到空值

$vdetails = get-customcmdlet | split($var)[1]
$vnum = $vdetails -replace '.*?(d+)$','$1'

我的结果应该是整数001

假设:get-customcmdlet返回一个pscustomobject对象,其属性Name类型为string

$var = 'vol'
$null -ne ((get-customcmdlet).Name -split $var)[1] -as [int]

此表达式将根据强制转换是否成功返回$true$false


如果你的目标是填充零,你需要事后做(在这种情况下,我只是捕获了原始字符串(:

$var = 'vol'
$out = ((get-customcmdlet).Name -split $var)[1]
if ($null -ne $out -as [int])
{
$out
}
else
{
throw 'Failed to find appended numbers!'
}

相关内容

  • 没有找到相关文章

最新更新