Виртуализация для переключения систем без перезагрузки

При использовании sed вам не нужно grep , потому что sed может одновременно выполнять поиск по шаблону.

В данном случае это довольно простое выражение; найдите строку {fig / , а затем добавьте png

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

Таким образом, мы получаем

sed 's!{\(fig/[^}]*\)}!{\1.png}!g' 

Например:

$ cat x
untouched lines
text{fig/titel/Logo}text
more lines
text{fig/somethingelse/image}text
text{fig/stuff}text and {fig/morestuff}text

$ sed 's!{\(fig/[^}]*\)}!{\1.png}!g' x
untouched lines
text{fig/titel/Logo.png}text
more lines
text{fig/somethingelse/image.png}text
text{fig/stuff.png}text and {fig/morestuff.png}text

Мы видим, что к записям {fig / ...} теперь добавлено png , а также другие элементы. нетронутый.

2
25.09.2016, 08:41
0 ответов

Теги

Похожие вопросы