Форум программистов, компьютерный форум, киберфорум
PowerShell
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.59/29: Рейтинг темы: голосов - 29, средняя оценка - 4.59
 Аватар для vavun
10593 / 5556 / 865
Регистрация: 07.04.2013
Сообщений: 15,660

Фильтрация вывода консольной программы (аналог findstr /v)

06.01.2018, 12:53. Показов 6003. Ответов 27
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую !

Нужно из вывода консольной программы убрать лишние строки замусоривающие вывод.
По факту нужно что то по типу findstr /v.

В программе при определенных условиях может попадаться примерно вот такой вот вывод
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
*************************************************************************
***                                                                   ***
***                                                                   ***
***    Either you specified an unqualified symbol, or your debugger   ***
***    doesn't have full symbol information.  Unqualified symbol      ***
***    resolution is turned off by default. Please either specify a   ***
***    fully qualified symbol module!symbolname, or enable resolution ***
***    of unqualified symbols by typing ".symopt- 100". Note that   ***
***    enabling unqualified symbol resolution with network symbol     ***
***    server shares in the symbol path may cause the debugger to     ***
***    appear to hang for long periods of time when an incorrect      ***
***    symbol name is typed or the network symbol server is down.     ***
***                                                                   ***
***    For some commands to work properly, your symbol path           ***
***    must point to .pdb files that have full type information.      ***
***                                                                   ***
***    Certain .pdb files (such as the public OS symbols) do not      ***
***    contain the required information.  Contact the group that      ***
***    provided you with these symbols if you need this command to    ***
***    work.                                                          ***
***                                                                   ***
***    Type referenced: nt!_KPRCB                                     ***
***                                                                   ***
*************************************************************************
А грусть в том, что он может повторяться раз 10 - 15 подряд с минимальными различиями, что затрудняет чтение.
Пытался findstr-ом отфильтровать, но не вышло.

Хотелка:

Убрать их вывода программы все строки вида:
*** ~ *** (три звезды, три пробела, любой текст, три пробела, три звезды)
И строки содержащие только звезды.

Разобраться с этими -match-ами и Select-String-ами не вышло.
Заранее благодарен за подсказки.
Пример вывода программы от начала до конца во вложении.
Вложения
Тип файла: zip debug.zip (4.6 Кб, 6 просмотров)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.01.2018, 12:53
Ответы с готовыми решениями:

Сохранение вывода консольной программы
Доброго времени суток. Программа запускает сторонние консольные приложения(ml.exe, link.exe. да да, компилит асм исходники:) ) Как...

Обработка вывода консольной программы
Здравствуйте. Нужно в Unix системе обработать вывод программы df. А именно получить путь смонтированного USB устройства Все бы хорошо, но я...

Хочу понять код для вывода цветного текста findstr /a
Нашел такой занимательный код для вывода цветного текста. Помогите расшифровать, что делается в каждой строке. Интуитивно понимаю в общем...

27
Любознательный
 Аватар для YuS_2
7405 / 2255 / 360
Регистрация: 10.03.2016
Сообщений: 5,216
06.01.2018, 14:36
vavun,
есть там ещё вот такой изыск:
Code
1
2
3
4
5
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************
- удалять или оставлять?
0
 Аватар для vavun
10593 / 5556 / 865
Регистрация: 07.04.2013
Сообщений: 15,660
06.01.2018, 14:42  [ТС]
Цитата Сообщение от YuS_2 Посмотреть сообщение
удалять или оставлять?
Этот пусть будет, он не мешает.

Я тут, кстати, тоже что то пытаюсь сообразить.
Получилось пока только так
PowerShell
1
Get-Content debug.txt | Where-Object { $_ -NotMatch "^\*\*\* .* \*\*\*$" }
А хотелось бы как то так
PowerShell
1
Get-Content debug.txt | Where-Object { $_ -NotMatch "^\*\*\* .* \*\*\*$" -or $_ -NotMatch "^\*\*\*\*\*\**" }
Думаю примерно понятно, что я пытаюсь сделать
0
Любознательный
 Аватар для YuS_2
7405 / 2255 / 360
Регистрация: 10.03.2016
Сообщений: 5,216
06.01.2018, 15:12
Цитата Сообщение от vavun Посмотреть сообщение
Этот пусть будет, он не мешает.
тогда придется считать количество символов...
как-то так:
PowerShell
1
gc debug.txt -enc OEM|sls -pattern "^\*{3} {1,3}[^\*]* {1,3}\*{3}","^\*{15,73}$" -notmatch
1
 Аватар для vavun
10593 / 5556 / 865
Регистрация: 07.04.2013
Сообщений: 15,660
06.01.2018, 15:26  [ТС]
Сейчас обновлю powershell и проверю ...

Добавлено через 5 минут
А как его вообще обновить на win7 ?
.NET Framework 4.7 есть, что ему еще нужно ?
Какой последний можно установить на win7 ?
Жесть какая то ..)

Добавлено через 1 минуту
Ставлю Windows Management Framework 5.1, надеюсь не зря =)
0
Любознательный
 Аватар для YuS_2
7405 / 2255 / 360
Регистрация: 10.03.2016
Сообщений: 5,216
06.01.2018, 15:27
Цитата Сообщение от vavun Посмотреть сообщение
не зря
Это да, точно!
0
 Аватар для vavun
10593 / 5556 / 865
Регистрация: 07.04.2013
Сообщений: 15,660
06.01.2018, 15:39  [ТС]
Я перезагрузил комп, который не перезагружал с прошлого года и пауэршэл стал 5.1 вместо 2.0.
YuS_2, на первый взгляд код делает то, что нужно, спасибо
В принципе регулярка, да.

А как бы выглядела регулярка именно для таких ситуаций, как я описал в стартовом посте ?
Цитата Сообщение от vavun Посмотреть сообщение
Убрать их вывода программы все строки вида:
*** ~ *** (три звезды, три пробела, любой текст, три пробела, три звезды)
И строки содержащие только звезды.
Мне, чтобы лучше понять что тут происходит.
Или лучше поясните как именно происходит разбор.

Спасибо =)
0
 Аватар для KDE777
1886 / 1108 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
06.01.2018, 17:16
Цитата Сообщение от vavun Посмотреть сообщение
Хотелка:
Убрать их вывода программы все строки вида:
*** ~ *** (три звезды, три пробела, любой текст, три пробела, три звезды)
И строки содержащие только звезды.
PowerShell
1
(gc debug.txt -Enc Oem) -notMatch "^\*{3}\s{3}.+\s{3}\*{3}$|^\*+$"
Добавлено через 36 минут
Цитата Сообщение от YuS_2 Посмотреть сообщение
PowerShell
1
gc debug.txt -enc OEM|sls -pattern "^\*{3} {1,3}[^\*]* {1,3}\*{3}","^\*{15,73}$" -notmatch
Ваш пример, не смотря на заданное условие, пропустил вот эти строчки:

Code
1
*******************************************************************************
И не оставил вот эти:

Code
1
***    fully qualified symbol module!symbolname, or enable resolution ***
1
Любознательный
 Аватар для YuS_2
7405 / 2255 / 360
Регистрация: 10.03.2016
Сообщений: 5,216
06.01.2018, 18:25
Цитата Сообщение от vavun Посмотреть сообщение
Или лучше поясните как именно происходит разбор.
Дык, регулярки в двух словах не описать, там очень много возможностей... это почти отдельный ЯП...

Цитата Сообщение от vavun Посмотреть сообщение
*** ~ *** (три звезды, три пробела, любой текст, три пробела, три звезды)
И строки содержащие только звезды.
Регулярки лучше разбирать посимвольно и тут очень важна точность составления того, что хочется получить...
Скажем по Вашему заданию, если составить вот такой, дословный шаблон:
Code
1
\*{3} {3}[^\n]+ {3}\*{3}
то совпадение может быть найдено в тексте, который удалять и не нужно, т.е. нет учета начала строки, нет учета последующих символов и т.п.
Code
1
2
   ***   abcd   *** Dfvb
Abcd ***   abcd   ***
- подобные строки были бы исключены.

Цитата Сообщение от KDE777 Посмотреть сообщение
Ваш пример, не смотря на заданное условие, пропустил вот эти строчки:
Не знаю, что там у Вас пропустил пример, но может быть имеет смысл поднять глаза по топику, туда где было от меня уточнение условия?
Вот тут...

Цитата Сообщение от KDE777 Посмотреть сообщение
И не оставил вот эти:
Вы такой буквоед? Человек мог просто не обратить внимание, что не везде перед конечными символами *** имеется именно три пробела, но зато привел кусок текста, который следует удалить... а Ваши оставленные строки, были в том приведенном тексте...
Т.е. у Вас не возникает даже мысли о том, что это было сделано преднамеренно? Понимаю, что программирование - наука точная, но не до такой же степени
0
 Аватар для KDE777
1886 / 1108 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
06.01.2018, 19:37
Цитата Сообщение от YuS_2 Посмотреть сообщение
Не знаю, что там у Вас пропустил пример, но может быть имеет смысл поднять глаза по топику, туда где было от меня уточнение условия?
Допустим, что ответ на ваше уточнение означал, что нужно оставить именно показанный вами блок, а не вот это (т.к. строчки со всеми звёздочками просили исключить):
Кликните здесь для просмотра всего текста
Code
1
2
3
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *

Но тогда регулярное выражение должно оставлять именно показанный вами блок, а ваш вариант пропустит, например строчку из 10 *, что противоречит заданному условию даже с учётом вашего уточнения.

Цитата Сообщение от YuS_2 Посмотреть сообщение
Понимаю, что программирование - наука точная, но не до такой же степени
По моему - "три звезды, три пробела, любой текст, три пробела, три звезды и строки содержащие только звезды" - сформулировано, в отличие от многих тем в этом разделе, предельно точно и ясно...

Добавлено через 7 минут
Цитата Сообщение от YuS_2 Посмотреть сообщение
Человек мог просто не обратить внимание, что не везде перед конечными символами *** имеется именно три пробела, но зато привел кусок текста, который следует удалить... а Ваши оставленные строки, были в том приведенном тексте...
Тем не менее, вы же уточнили про "Bugcheck Analysis" обрамлённый звёздочками. Вот и я предупредил, что в приложенном файле есть, помимо прочего: "три звезды, три пробела, любой текст, один пробел, три звезды"
0
 Аватар для vavun
10593 / 5556 / 865
Регистрация: 07.04.2013
Сообщений: 15,660
06.01.2018, 19:42  [ТС]
Оставьте друг друга в покое, пожалуйста. Ну не в моей же кровати теме

Тут раздел powershell (с) (tm), а не решальня задачек, как в программерских разделах. Главное задать вопрошающему направление и мне его задали вы оба, за что я вам благодарен.
Только вот не нужно споров, очень прошу
0
 Аватар для KDE777
1886 / 1108 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
06.01.2018, 20:09
Цитата Сообщение от vavun Посмотреть сообщение
Только вот не нужно споров
Я только уточнил, что пример показанный YuS_2 удалит/оставит (не смотря на условие), например, вот такие строчки:

Code
1
2
3
***   ABC  ***
***   ABC   *** XYZ
********
И уточнил я это, исключительно для тех, кто возможно заглянет в эту тему, чтобы тоже разобраться с регулярными выражениями.

Всех с прошедшими и наступающими праздниками
0
Любознательный
 Аватар для YuS_2
7405 / 2255 / 360
Регистрация: 10.03.2016
Сообщений: 5,216
06.01.2018, 20:57
Цитата Сообщение от KDE777 Посмотреть сообщение
Я только уточнил
Хороший совет вам: уточняйте то, что делаете сами, не лезьте в чужой код, который был предназначен не для вас и не будьте таким педантом. Программирование не настолько сухая наука, это ещё и творчество тоже...
В общем, ТС сам разберется, что ему нужнее.
Поправить можно там, где ошибка может привести к непредсказуемым результатам, а не выискивать мелочь в чужом коде...

Цитата Сообщение от KDE777 Посмотреть сообщение
И уточнил я это, исключительно для тех, кто возможно заглянет в эту тему, чтобы тоже разобраться с регулярными выражениями.
Вы настолько себя считаете непогрешимым? Не льстите себе...
А с регулярными выражениями лучше разбираться не по постам людей с завышенным ЧСВ на форумах , а посредством "умных книжек", например, книга Джеффри Фридла "Регулярные выражения", где всё достаточно доступно описано. А для расширения знаний, можно обращаться и к более насыщенному источнику (хотя, конечно, не всё и не везде будет работать так, как там описано)

Не по теме:

Жена отправляет мужа-программиста в магазин:
- Купи батон хлеба, если будут яйца - возьми десяток.
Муж возвращается из магазина с десятью батонами.
- Ты зачем столько хлеба купил?
- Так ведь яйца были...

0
 Аватар для KDE777
1886 / 1108 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
07.01.2018, 03:23

Не по теме:

Цитата Сообщение от YuS_2 Посмотреть сообщение
Хороший совет вам: уточняйте то, что делаете сами, не лезьте в чужой код, который был предназначен не для вас
Во первых, это публичный форум - написанное мной прямо касалось темы и в какой-то степени давало ответ на "понять что тут происходит", к тому же, я кроме комментариев к скрипту, в отличие от вас не переходил на личности (буквоед, педант, завышенное ЧСВ). Во вторых, не припоминаю где сказано, что код YuS_2 - это аксиома выбитая в граните :)

Цитата Сообщение от YuS_2 Посмотреть сообщение
Поправить можно там, где ошибка может привести к непредсказуемым результатам, а не выискивать мелочь в чужом коде...
На это вспоминается анекдот:

“У вас есть проблема. Вы решили использовать регулярные выражения, чтобы её решить. Теперь у вас две проблемы.”
Часто именно использование регулярных выражений и проводит к "непредсказуемым результатам" :) Вот пример, когда ошибка допущенная разработчиками в регулярном выражение, целиком укладывала Exchange сервер.



Но если хотите, можно поискать и мелочи, например зачем вы используете конструкцию Get-Content | Select-String ? Просто sls без gc - отработает в несколько раз быстрее вашего и моего примера

PowerShell
1
(sls debug.txt -patt "^\*{3}\s{3}.+\s{3}\*{3}$|^\*+$" -n -en oem).Line

Не по теме:

Цитата Сообщение от YuS_2 Посмотреть сообщение
Вы настолько себя считаете непогрешимым? Не льстите себе...
Я придерживаюсь мнения, что "на ошибках учатся" и "в споре рождается истина", поэтому человеку, который поправит мою ошибку или предложит более простое/эффективное решение, скажу только спасибо (что здесь не раз и было). Так что, это вы про кого-то другого.

Цитата Сообщение от YuS_2 Посмотреть сообщение
А с регулярными выражениями лучше разбираться не по постам людей с завышенным ЧСВ на форумах , а посредством "умных книжек", например, книга Джеффри Фридла "Регулярные выражения", где всё достаточно доступно описано. А для расширения знаний, можно обращаться и к более насыщенному источнику
И тем не менее, вы на этом форуме даёте ответы и показываете свои решения, а не отправляете всех спрашивающих в библиотеку и к более насыщенному источнику :)
А так как, ни вы ни я не объяснили здесь, что такое все эти: ^, $, {1,3} и т.п., то кому станет интересно почему и как это работает, всё равно заглянет в google, мануалы и надеюсь, даже в книги.

0
Любознательный
 Аватар для YuS_2
7405 / 2255 / 360
Регистрация: 10.03.2016
Сообщений: 5,216
07.01.2018, 09:27
Цитата Сообщение от KDE777 Посмотреть сообщение
не переходил на личности
Ну, собственно, за это извиняюсь... действительно, это было лишним...

Цитата Сообщение от KDE777 Посмотреть сообщение
Во вторых, не припоминаю где сказано, что код YuS_2 - это аксиома выбитая в граните
А вот это уж точно никто не пытался утверждать. Ведь я не комментировал Ваш код и ни в коем случае не пытался его "запретить".

Цитата Сообщение от KDE777 Посмотреть сообщение
когда ошибка допущенная разработчиками
Я лишь хотел сказать о том, что человек - не машина и ошибки допускает чаще, увы... и Вы, в том числе, не исключение.

Цитата Сообщение от KDE777 Посмотреть сообщение
Но если хотите, можно поискать и мелочи, например зачем вы используете конструкцию Get-Content | Select-String ? Просто sls без gc - отработает в несколько раз быстрее вашего и моего примера
Ну, тут всё просто: сначала использовалась конструкция (gc -raw) -replace '', но получилось немного громоздко и затем пришла мысль, что gc|sls без -raw лучше с этим справится и было написано то, что получилось, т.е. на скорость работы не проверялся код и попыток сделать оптимизацию не было. Ну, а то, что есть и более оптимальные решения - это хорошо.

Цитата Сообщение от KDE777 Посмотреть сообщение
И тем не менее, вы на этом форуме даёте ответы и показываете свои решения, а не отправляете всех спрашивающих в библиотеку и к более насыщенному источнику
Человек слаб и то, что мне просто иногда интересно решать некоторые задачки, это главная причина. А отправлять всех и каждого на чтение книг и прочих ресурсов... здесь ведь это прямо запрещено правилами

PS Главная мысль моих словоблудий: если есть желание, предоставляйте свои собственные решения как альтернативу, но воздерживайтесь от контроля чужих - Вы ведь здесь не работодатель и никакой не преподаватель для остальных форумчан, чтобы осуществлять функцию контроля правильности кода и в итоге тут ведь не комиссия по приему готовых и отлаженных кодов...

Добавлено через 30 минут
Цитата Сообщение от KDE777 Посмотреть сообщение
отработает в несколько раз быстрее вашего и моего примера
PowerShell
1
(sls debug.txt -patt "^\*{3}\s{3}.+\s{3}\*{3}$|^\*+$" -n -en oem).Line
Кстати, если уж речь зашла об оптимизации, вот такой код:
PowerShell
1
(sls debug.txt -patt "(?>^\*{3}\s{3}.+\s{3}\*{3}$|^\*+$)" -n -en oem).Line
-отработает ещё быстрее примерно в 2-3 раза...
И да, если уж говорить о буквальном подходе к условию, то \s - аналог [ \f\t\v\n], т.е. это не совсем соответствует условию...
0
 Аватар для KDE777
1886 / 1108 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
07.01.2018, 11:04
Цитата Сообщение от YuS_2 Посмотреть сообщение
Кстати, если уж речь зашла об оптимизации, вот такой код:
PowerShell
1
(sls debug.txt -patt "(?>^\*{3}\s{3}.+\s{3}\*{3}$|^\*+$)" -n -en oem).Line
-отработает ещё быстрее примерно в 2-3 раза...
Попробовал, но мой последний вариант и ваш оптимизированный отрабатывают на моём ПК одинаково. Разница на уровне погрешности:

Кликните здесь для просмотра всего текста
PowerShell
1
2
3
4
5
6
7
8
"ваш первый вариант:"
(1..10 | % {Measure-Command {gc debug.txt -enc OEM | sls -patt "^\*{3} {1,3}[^\*]* {1,3}\*{3}","^\*{15,73}$" -n}} | select -ExpandProperty TotalMilliseconds | Measure-Object -Average).Average
"мой первый вариант:"
(1..10 | % {Measure-Command {(gc debug.txt -Enc Oem) -notmatch "^\*{3}\s{3}.+\s{3}\*{3}$|^\*+$"}} | select -ExpandProperty TotalMilliseconds | Measure-Object -Average).Average
"моё предложение использовать только sls:"
(1..10 | % {Measure-Command {(sls debug.txt -patt "^\*{3}\s{3}.+\s{3}\*{3}$|^\*+$" -n -en oem).Line}} | select -ExpandProperty TotalMilliseconds | Measure-Object -Average).Average
"вариант, который по вашему мнению отработает ещё быстрее, примерно в 2-3 раза:"
(1..10 | % {Measure-Command {(sls debug.txt -patt "(?>^\*{3}\s{3}.+\s{3}\*{3}$|^\*+$)" -n -en oem).Line}} | select -ExpandProperty TotalMilliseconds | Measure-Object -Average).Average


Code
1
2
3
4
5
6
7
8
ваш первый вариант:
20,08286
мой первый вариант:
14,20565
моё предложение использовать только sls:
3,32034
вариант, который по вашему мнению отработает ещё быстрее, примерно в 2-3 раза:
3,40873

Не по теме:


Цитата Сообщение от YuS_2 Посмотреть сообщение
если есть желание, предоставляйте свои собственные решения как альтернативу, но воздерживайтесь от контроля чужих - Вы ведь здесь не работодатель и никакой не преподаватель для остальных форумчан, чтобы осуществлять функцию контроля правильности кода и в итоге тут ведь не комиссия по приему готовых и отлаженных кодов...
Очень странно, что вы воспринимаете мои коментарии/правки именно так. Надеюсь, вы слышали про такие понятия как СПО, Social Coding (GitHub)... Просто не представляю, как с таким отношением мог бы работать принцип: "свободное использование, изучение, распространение и изменение (совершенствование)"



Добавлено через 12 минут
Цитата Сообщение от YuS_2 Посмотреть сообщение
И да, если уж говорить о буквальном подходе к условию, то \s - аналог [ \f\t\v\n], т.е. это не совсем соответствует условию...
С этим замечанием согласен, сработала моя привычка использовать \s, там где этого явно не требовалось. Кстати, как и моя привычка сначала всё связанное с текстами, решать через: gc | ? {$_ -match 'foo'}
0
Любознательный
 Аватар для YuS_2
7405 / 2255 / 360
Регистрация: 10.03.2016
Сообщений: 5,216
07.01.2018, 12:34
Цитата Сообщение от KDE777 Посмотреть сообщение
Попробовал, но мой последний вариант и ваш оптимизированный отрабатывают на моём ПК одинаково.
Хмм, действительно, перепроверил на файле debug.txt, в котором количество текста было увеличено копированием... и различие уже не было столь значительным, хоть выигрыш времени всё же есть. Тут просто логически: атомарные группы работают быстрее за счет отбрасывания вариантов при первом найденном совпадении одного из вариантов альтернатив в шаблоне...т.е. возвратов по строке должно быть значительно меньше.
А при первичной проверке на исходном файле показало:
Code
1
2
3
4
5
6
7
8
9
10
11
Days              : 0
Hours             : 0
Minutes           : 0
Seconds           : 0
Milliseconds      : 69
Ticks             : 699097
TotalDays         : 8,09140046296296E-07
TotalHours        : 1,94193611111111E-05
TotalMinutes      : 0,00116516166666667
TotalSeconds      : 0,0699097
TotalMilliseconds : 69,9097
и
Code
1
2
3
4
5
6
7
8
9
10
11
Days              : 0
Hours             : 0
Minutes           : 0
Seconds           : 0
Milliseconds      : 29
Ticks             : 295117
TotalDays         : 3,41570601851852E-07
TotalHours        : 8,19769444444444E-06
TotalMinutes      : 0,000491861666666667
TotalSeconds      : 0,0295117
TotalMilliseconds : 29,5117
В общем, видимо, какие-то внешние влияющие факторы вмешались в корректность измерения на малом объеме текста.

Цитата Сообщение от KDE777 Посмотреть сообщение
Надеюсь, вы слышали про такие понятия как СПО, Social Coding (GitHub)... Просто не представляю, как с таким отношением мог бы работать принцип: "свободное использование, изучение, распространение и изменение (совершенствование)"
Здесь главное - не путать совместную разработку ПО, где общая работоспособность зависит от каждого участника и простые ответы на конкретные вопросы на форуме...

Цитата Сообщение от KDE777 Посмотреть сообщение
решать через: gc | ? {$_ -match 'foo'}
Ну, так ведь powershell живет конвеерами, поэтому и приходят первыми на ум именно они и это правильно, имхо.
0
 Аватар для vavun
10593 / 5556 / 865
Регистрация: 07.04.2013
Сообщений: 15,660
07.01.2018, 17:46  [ТС]
Цитата Сообщение от KDE777 Посмотреть сообщение
зачем вы используете конструкцию Get-Content | Select-String ? Просто sls без gc - отработает в несколько раз быстрее вашего и моего примера
А теперь попробуйте применить это к строке:
Code
1
kd.exe  -z "D:\Desktop\Minidump\010718-12183-01.dmp" -y srv*"D:\Symbols"*http://msdl.microsoft.com/download/symbols -i srv*"D:\Symbols"*http://msdl.microsoft.com/download/symbols -c "!analyze -v; q"
А не к текстовому файлу
0
Любознательный
 Аватар для YuS_2
7405 / 2255 / 360
Регистрация: 10.03.2016
Сообщений: 5,216
07.01.2018, 19:50
Цитата Сообщение от vavun Посмотреть сообщение
применить это к строке
Это не так сложно, на самом деле. Вопрос только в том, что требуется получить в результате обработки строки...
Или тут имелось в виду применить к выводу, получаемому в результате выполнения этой строки?
0
 Аватар для vavun
10593 / 5556 / 865
Регистрация: 07.04.2013
Сообщений: 15,660
07.01.2018, 19:56  [ТС]
Цитата Сообщение от YuS_2 Посмотреть сообщение
Или тут имелось в виду применить к выводу, получаемому в результате выполнения этой строки?
Именно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.01.2018, 19:56
Помогаю со студенческими работами здесь

Кодировка при чтении вывода консольной команды
Доброго времени суток, подскажите как исправить проблему. У меня маленькое приложение, оно запускает в фоном CMD. После на форме есть...

Непредсказуемое изменение хэндла вывода (STD_OUTPUT_HANDLE) консольной программой
Прошу помочь разобраться, что происходит с хэндлом вывода. Почему-то указатель на хэндл для функции WriteConsoleA внутри процедуры...

Выполнение команд консольной программы из другой программы
Подскажите пожалуйста можно ли получить контроль над консольной прогой из другой самописной проги. То есть есть запущеная консольная прога,...

Рестарт консольной программы
Как сделать так ,что бы после выполнения всех действий в консольном приложении, программа начиналась заново, без использования for(i =...

Разработка консольной программы
Тут вот какое задание получила: Разработать консольную программу,выполняющую роль шела(консоли,командной строки).Программа должна уметь: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru