Как я могу искать шаблоны на экране с регулярным выражением Perl? - PullRequest
4 голосов
/ 04 мая 2009

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

/\b([a-z]*[A-Z][a-z]*){2,}\b/

Ответы [ 3 ]

7 голосов
/ 04 мая 2009

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

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

$ your_program | tee your_program_output
$ grep pattern your_program_output
1 голос
/ 04 мая 2009

Да, захватить вывод и найти его. GNU / Screen не является правильным инструментом для сбора данных, и многие вещи могут пойти не так с этим. Но очевидно, что вы все равно можете запустить его в сеансе экрана.

0 голосов
/ 03 сентября 2015

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

...