Удалить остаток каждой строки после определенного шаблона - PullRequest
0 голосов
/ 10 октября 2018

Цель в этом примере - удалить остаток строки для каждой строки после шаблона 90000:

Входной файл

generation
122344
41572:47149-47999/2(14485-14910) 41584:47149-47999/2(14911-15449) 90000:47919-47999/2(15447-15477) 90002:47919-47999/2(15478-15418) 
41548:48094-48894/2(12844-14244) 41590:48094-48894/2(14244-14944) 41572:48094-48894/2(14945-14045) 41584:48094-48894/2(14049-14449) 90000:48094-48114/2(14447-14447) 90002:48094-48114/2(14448-14458) 
12345

Я пытался .Этот код удаляет только часть текста. Цель состоит в том, чтобы удалить все символы после находок 90000:

sed 's/90000:*//' file

Желаемый вывод

generation
122344
41572:47149-47999/2(14485-14910) 41584:47149-47999/2(14911-15449)
41548:48094-48894/2(12844-14244) 41590:48094-48894/2(14244-14944) 41572:48094-48894/2(14945-14045) 41584:48094-48894/2(14049-14449)
12345

Оценить вашподдержка

1 Ответ

0 голосов
/ 10 октября 2018

Не могли бы вы попробовать следующее.

awk '{gsub(/ 9000.*/,"")} 1'  Input_file

Чтобы исправить ваш код, попробуйте:

sed 's/90000:.*//'  Input_file
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...