Добрый вечер.
Хотел бы спросить у знатоков bash такую штуку.
Все знают, что скрипт в установочном пакете, расположенный в пакете по адресу /install/doinst.sh, выполняет послеустановочные действия.
Нужно, после установки пакета удалить один файл по конкретному адресу, поэтому вопрос - что написать в /install/doinst.sh, чтобы удалить файл по адресу /usr/local/bin/get_src.sh?
Просто - rm /путь/файл - не удаляет...
Может нужно синтаксис какой то особенный знать?
Модификация пакетов для Slackware
PS...
Если точнее, ссылку на файл... :[
Есть два варианта: 1) модифицировать слакбилд, с тем, чтобы требуемое удаление выполнялось до собственно создания пакета, то есть, до вызова makepkg. В этом случае путь до файла будет таким: $PKG/usr/local/bin/get_src.sh. И 2) поместить в doinst.sh нужную команду. Путь при этом, как я понимаю, указывается относительно корневого каталога, т.е., usr/local/bin/get_src.sh.
И 2) поместить в doinst.sh нужную команду. Путь при этом, как я понимаю, указывается относительно корневого каталога, т.е., usr/local/bin/get_src.sh
Я помещал... Не получается. Не удаляет...
Какую бы команду поместили бы Вы?
Файл и путь Вы уже знаете... Есть подозрение, что я чего то нахимичил с переменными в предыдущих экспериментах.
Если эта ссылка из этого же пакета, то разумнее удалить ее до создания пакета.
Другой момент -- скорее всего ваш случай -- makepkg переносит создание ссылок в install/doinst.sh (-l y), если не указывали дополнительно ключик "--prepend", то ссылки создаются после действий, записанных в doinst.sh. Поэтому на момент выполнения rm ссылки еще нет.
Другой момент -- скорее всего ваш случай -- makepkg переносит создание ссылок в install/doinst.sh (-l y), если не указывали дополнительно ключик "--prepend", то ссылки создаются после действий, записанных в doinst.sh. Поэтому на момент выполнения rm ссылки еще нет.