Страница 1 из 1

заменить путь в файле другим, который передается переменной

Добавлено: 2008-11-11 11:26:47
Smash
Всем привет.
Я создаю rpm пакет
он будет иметь возможность устанавливаться туда, куда укажет пользователь
для этого нужно, чтобы в скрипте, помещаемом в /etc/init.d/ при установке пакета изменялся путь на тот, который укажет юзер
я это пытаюсь сделать так
sed "s/@prefix@/$RPM_INSTALL_PREFIX/g" /etc/init.d/script > /etc/init.d/script
@prefix@ - это путь по умолчанию в /etc/init.d/script, который нужно заменить
$RPM_INSTALL_PREFIX - переменная, которую задает юзер при указании пути
но $RPM_INSTALL_PREFIX = /usr/local (например) и sed Неправильно воспринимает из-зи слэшэй, я так понимаю нужно как-то преобразовать эту запись, sed ведь может работать с путями?
или может другим способом можно это решить?
Заранее благодарен.

Re: заменить путь в файле другим, который передается переменной

Добавлено: 2008-11-11 12:13:42
manefesto
хз....пробуй через перл

Re: заменить путь в файле другим, который передается переменной

Добавлено: 2008-11-11 17:03:17
Smash
sed "s?@prefix@?$RPM_INSTALL_PREFIX?g" /etc/init.d/script > /etc/init.d/script
Работает, только нужно выходной файл указывать другим, иначе создает 0й файл.
Есть идеи как изменить команду, чтобы работало полностью без лишних движений?