Мне нужно заменить текст внутри текстового файла с заменой. Обычно я хотел бы сделать что-то вроде
sed -i 's/text/replacement/g' path/to/the/file
Проблема в том, что оба text
и replacement
являются сложными строками, содержащими тире, косые черты, черные черты, кавычки и так далее. Если я уберу все необходимые символы внутри, text
вещь станет быстро нечитаемой. С другой стороны, мне не нужна сила регулярных выражений: мне просто нужно заменить текст буквально.
Есть ли способ сделать подстановку текста без использования регулярных выражений с какой-то командой bash?
Было бы довольно тривиально написать скрипт, который делает это, но я думаю, что что-то уже должно существовать.
bash
всегда поставляются с Microsoft Word? ;) Нет, просто прикалываюсь. ОП может захотеть сделать это на удаленной машине или для пакета файлов, хотя.
sed
, что, вероятно, бесполезно, учитывая все различия между коммутаторами и платформами.
find and replace all