Powershell не может получить доступ к полю и значениям атрибутов объекта - PullRequest
0 голосов
/ 24 октября 2019

Я работаю над тем, чтобы получить вывод команды cmd в Powershell. Команда 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 голосов
/ 25 октября 2019

Я бы предпочел сделать это с регулярным выражением, используя именованные группы захвата. Пожалуйста, будьте так любезны и адаптируйте регулярное выражение к вашим потребностям, используемое является лишь примером.

    $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;
...