2015-08-07 3 views
3

Я есть строкаSED заменить кавычки

"Motor des regionalen Neuen Forums" 

и хотите заменить кавычки, чтобы иметь

\q{Motor des regionalen Neuen Forums} 

gloablly в файле.

Как это сделать с sed? Или любой другой инструмент unix? Благодаря

+0

Как 'sed 's /" \ ([^ "] \ + \)"/\\ q {\ 1}/g' your_file' или 'sed -E 's /" ([^ "] +) "/ \\ q {\ 1}/g 'your_file'? –

+0

спасибо, что посмотрели, что я хочу получить общий ответ. – Philipp

+0

Если кто-то из вас работает для вас, пожалуйста, дайте мне знать, чтобы я мог опубликовать ответ. –

ответ

1

Вы можете использовать следующую команду: патч в

sed 's/"\([^"]\+\)"/\\q{\1}/g' your_file 

См demo, показывающий, как Тхи s regex работает. В sed вам просто нужно избежать скобок ((...)) и квантора +. Эквивалентный символ должен быть удвоен, чтобы представить литерал \ в сменном шаблоне, где используется обратная ссылка на текст, сопоставленный с первой группой захвата.

-1

СЭД -i.BACKUP "s/\" Motor \ де \ regionalen \ Neuen \ Форум \ "/ \\ д {Motor \ де \ regionalen \ Neuen \ Форум} /" yourfile

.backup часть он просто создает резервную копию с именем yourfile.BACKUP

Смежные вопросы