我正在努力在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”,但没有帮助。
答案 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;