Как выбрать конкретную строку из вывода в Powershell

Вопрос: Когда я хочу выбрать конкретный текст из вывода в powershell, я мог бы использовать select-string -Pattern "whatever:" И он распечатает любой столбец. Но когда я пытаюсь сделать то же самое на этом выходе, он вместо этого выводит строку вместо столбца. Поэтому я делаю так: > /c0 show | select-string -Pattern "EID:Slt" И вместо того,

Вопрос:

Когда я хочу выбрать конкретный текст из вывода в powershell, я мог бы использовать

select-string -Pattern «whatever:»

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

Поэтому я делаю так:

> /c0 show | select-string -Pattern «EID:Slt»

И вместо того, чтобы показывать столбец, это показывает:

> EID:Slt DID State DG Size Intf Med SED PI SeSz Model > Sp

Единственный способ, которым я мог понять, – заменить всех персонажей пустым пространством, но это как-то грязно, чтобы сделать это, кто-нибудь еще может помочь с вводом?

Как я пытаюсь заставить его отображать выходной текст: 32: 1, 32: 2, 32: 3, […]

Controller = 0 Status = Success Description = Show Drive Information Succeeded. Drive Information : ================= ————————————————————————— EID:Slt DID State DG Size Intf Med SED PI SeSz Model Sp ————————————————————————— 32:0 0 Onln 0 3.637 TB SATA HDD N N 512B ST4000NM0033-9ZM170 U 32:1 1 Onln 1 3.637 TB SATA HDD N N 512B ST4000NM0033-9ZM170 U 32:2 2 Onln 1 3.637 TB SATA HDD N N 512B ST4000NM0033-9ZM170 U 32:3 3 Onln 1 3.637 TB SATA HDD N N 512B ST4000NM0033-9ZM170 U 32:4 4 Onln 1 3.637 TB SATA HDD N N 512B ST4000NM0033-9ZM170 U 32:5 5 Onln 1 3.637 TB SATA HDD N N 512B ST4000NM0033-9ZM170 U 32:6 6 Onln 1 3.637 TB SATA HDD N N 512B ST4000NM0033-9ZM170 U 32:7 7 Onln 1 3.637 TB SATA HDD N N 512B ST4000NM0033-9ZM170 U ————————————————————————— Лучший ответ:

Не могли бы вы просто соответствовать шаблону данных в нужном столбце? Первый столбец всегда находится в начале строки, имеет две цифры, за которыми следует двоеточие и одна цифра. Вы можете извлечь их из этого:

Select-String -Pattern «^d{2}:d» -AllMatches | % { $_.Matches.Value }

Чтобы получить данные из всей таблицы с именами свойств из строки заголовка, лучше проанализировать их как поля фиксированной длины. Но вышеуказанного должно быть достаточно, если этот столбец – это все, что вам нужно.

Оцените статью
Добавить комментарий