Powershell无法访问对象属性字段和值

时间:2019-10-24 20:24:44

标签: powershell cmd powershell-4.0

我正在努力在Powershell中获取cmd命令输出。我执行的cmd命令如下。

$obj = cmd.exe /c 'twiddle -s localhost -u xyz -p abc get "service=tempservice" stats'

如果我打印对象,它将值打印为

Stats=[Ljava.lang.String;@c43b53

我想在PowerShell中访问此字符串对象的值,以便可以拥有此$ obj的所有字段和值。我希望获取统计信息中一个名为“ count = 1020132”的属性和字段的值。

我的Get-Member没有任何可帮助我解决此问题的属性或方法。

我尝试做$ obj。“ property”,但没有帮助。

1 个答案:

答案 0 :(得分:0)

我更喜欢使用命名捕获组对正则表达式进行处理。 请保持友好,使正则表达式适应您的需求,使用的仅是示例。

    $str ='Stata=[Ljava.lang.String;@c43b53';
    [regex]$rx = "(?<trailer>\S+)\=\[(?<first>\S+)\.(?<second>\S+)\.(?<third>\S+);(?<leader>\S+)";

    $m = $rx.Match($str);
    $m;
    $m.Groups["trailer"].Value;
    $m.Groups["first"].Value;
    $m.Groups["second"].Value;
    $m.Groups["third"].Value;
    $m.Groups["leader"].Value;