Как найти шаблон с конкретными именами файлов в выводе nohup? - PullRequest
0 голосов
/ 20 сентября 2018

Я запустил цикл for с несколькими командами для разных файлов в оболочке под nohup.Мне нужно получить значения журнала одной из команд, которая печатается на терминале (в данном случае, в файле nohup.out).Я попытался сделать egrep и найти шаблон.Хотя я получил значения в журнале, я не знаю, к какому файлу он относится.Я хочу напечатать имя файла вместе со значениями.Есть ли способ сделать это?Любая помощь будет оценена.Заранее спасибо.

Мой файл nohup.out выглядит как

100000 GFF lines processed.
200000 GFF lines processed.
300000 GFF lines processed.
400000 GFF lines processed.
500000 GFF lines processed.
600000 GFF lines processed.
700000 GFF lines processed.
.
.
.
about 10000 lines 
.
.
.
__no_feature    XXXX
__ambiguous 102723
__too_low_aQual 0
__not_aligned   0
.
.
.
.

Это продолжается для нескольких разных файлов.Я хочу извлечь четыре строки с именами входных файлов "__no_feature" и т. Д.

Я использовал egrep:

egrep "__no_feature|__ambiguous|__too_low_aQual|__not_aligned|__alignment_not_unique" nohup.out

Но я получил только шаблоны, а не имена файлов.

1 Ответ

0 голосов
/ 20 сентября 2018

Попробуйте использовать опцию egrep -H

egrep -H "__no_feature|__ambiguous|__too_low_aQual|__not_aligned|__alignment_not_unique" nohup.out

-H опция используется для просмотра имени файла вместе с соответствующей строкой
-h опция используется для скрытия имени файлаиз согласованной линии

...