Назад | Перейти на главную страницу

sed заменить внутри файла оболочки

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

Строка, которую необходимо заменить:

$database = $db."_db";

Фактическая команда sed должна содержать переменную, поэтому не уверен, что мне следует экранировать и где?

#!/bin/sh

sed -i s/$db."db"/$DATABASE/ mysql_connect.php

Спасибо.

Заключите строку в одинарные кавычки, чтобы предотвратить расширение переменной.

sed -i s/'$db."_db"'/$DATABASE/ mysql_connect.php

заменить все вхождения $db."_db" со значением $DATABASE.