Sed: Как заключить совпадающие строки? - PullRequest
0 голосов
/ 13 сентября 2018

У меня есть эта проблема с седом.

Вот что я использую:

sed -e "s/^00.*$/[&]\n/" file.txt

Попытка сопоставить вхождения этого шаблона в файле:

00:04:33.00,00:04:37.47

и замените скобками в начале и конце и новой строкой.

Я хочу получить это:

[00:04:33.00,00:04:37.47]
<<need a new line here>>>

Тем не менее, я получаю это:

]00:04:37.47,00:04:40.25
<<with a new line here>>>

1 Ответ

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

Вы получаете закрывающую скобку в начале строки, потому что у вашего входного файла есть окончания строки в стиле DOS \r\n. Попробуйте сначала удалить возврат каретки в конце строки.

sed 's/\r$//; s/^00\..*/[&]\n/' file
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...