Можно автоматизировать задания крона с crontab -e
. С тех пор crontab -e
вызывает редактора, указанного $VISUAL
, или $EDITOR
если VISUAL
не установлен, укажите некоторый сценарий как $VISUAL
.
script=$(mktemp)
cat <<'EOF' >"$script"
#!/usr/bin/ed -s
1,$/#job1$/d
$a
1 2 3 4 5 new job #job2
.
w
q
EOF
VISUAL="$script" crontab -e
rm -f "$script"
Нет никакого внутреннего понятия имен задания; можно легко составить один путем добавления комментария как #jobname
в конце каждой строки как в примере выше.
Вместо crontab -e
, можно найти легче вывести текущий файл, отредактировать его и установить новую версию или сохранить основную копию и установить его при изменении его. Используя средства основной копии, что Вы не должны редактировать crontab через другие средства или Ваши изменения, будет переопределен. Дамп текущего файла и редактирование его означают, что, если что-то или кто-то еще редактируют crontab одновременно, кто бы ни устанавливает сначала, переопределят их изменения; некоторые версии crontab
предотвратите это путем блокировки файла в то время как crontab -e
в действии, но я не знаю, делает ли Солярис.
Создайте пакет для каждого целенаправленного распределения. "Один установщик файла, содержащий ванну и раковину, в случае, если они уже не установлены", является очень невежливостью. Возможно, это релевантно здесь.
Дистрибутивы имеют широко различные политики в отношении того, что поставляться, стандарты конфигурационного файла, и как упаковать программное обеспечение. Лучше примите на работу некоторую заинтересованную сторону, knowledeable с распределением, и сделайте, чтобы они приняли упаковку и интеграцию в распределение. Это уменьшит трение чрезвычайно.
.tar.gz
с инструкциями по установке (возможно, добавляют конфигурацию автоконфискации, это - перенос для установки только бриз, чтобы быть в курсе позже). Оставьте istalling пользователю.
– vonbrand
02.04.2013, 18:35
Обычно это - a bash
сценарий, куда Вы помещаете архив своих файлов в конце файла. Вы добавляете md5
хешируйте, чтобы проверить, был ли файл загружен правильно, и добавьте некоторые операции в начале файла для развертывания архива.
Править: пример с программой uudecode.
shar
. Проверьте GNU sharutils.
– vonbrand
02.04.2013, 18:36
Попробуйте инструмент CQtDeployer . Этот инструмент использует Qt Installer Framework для создания установщиков и поддерживает платформы Windows и Linux.
cqtdeployer -bin path\to\myApp qif
Если вы используете Qt, добавьте параметр qmake.
cqtdeployer -bin path\to\myApp -qmake path\to\qmake qif
Дополнительные примеры использования этой утилиты см. в CQtDeployer Wiki
Обратите внимание, что вы должны стремиться создавать пакеты для целевых дистрибутивов, как упоминалось в других ответах.
Но если вам действительно нужен графический установщик, как в Windows, для этого случая я написалlinux _установщик , похожий на NSIS/Wizard97, использующий GTK3 в Linux.