Bash и скрипты
"Скриптинг" - это техника автоматизации процедур путем объединения команд и сохранения их в виде текстовых файлов, называемых "скриптами" ("сценариями"). Всякий раз, когда вы запускаете скрипт, команды обрабатываются одна за одной так, будто они были введены вами в Терминале (Terminal) вручную.
Скрипты могут варьироваться от простейших, выполняющих всего несколько команд в особом порядке, до нетривиальных фрагментов кода, решающих сложные задачи.
Bash
Учитывая, что скрипты во многом зависят от оболочки, которой они интерпретируются, для начала вам следует ознакомиться с BASH, который используется в Haiku. В сети есть достаточно много ресурсов, ведь эта оболочка широко распространена. Хорошим руководством послужит работа Йохана Янссона (Johan Jansson) Introduction to bash - a tutorial for bash under BeOS.
Библия скриптинга
После того, как вы изучили некоторые основы работы в командной строке, пришло время выпускать себя в мир скриптинга. Опять же, множество руководств вы найдете в сети и на полках книжных магазинов. Книга, созданная специально для Haiku, доступна онлайн: Scripting Chapter (PDF, 900кб) от создателя "BeOS Bible" - Скота Хакера (Scot Hacker).
Скрипты в Haiku
Haiku used to have scripts for booting and shutting down. Today it uses the launch_daemon instead. However, the user can still augment this process with certain user scripts. If they don't exist already, you'll have to create the needed files yourself. Otherwise simply add your commands where in the process you want them to be executed.
UserBootscript
/boot/home/config/settings/boot/UserBootscript будет выполнен после того, как система завершит процесс загрузки. Например, вы можете добавить несколько программ, которые будут автоматически стартовать при каждой загрузке:
# Запуск LaunchBox /boot/system/apps/LaunchBox & # Запуск Workspaces /boot/system/apps/Workspaces &
Не забудьте добавить в конце команды знак "&", чтобы запустить этот процесс в фоновом режиме, иначе скрипт зависнет, пока эта команда не будет завершена (в данном случае, когда запущенное приложение будет закрыто).
Более простая альтернатива для запускающихся приложений во время загрузки - разместить ссылки на необходимые программы в папке /boot/home/config/settings/boot/launch. Это может быть сделано правым кликом по приложению, которое вы хотели бы поместить в автозапуск, выбрав меню и затем выполнив перемещение по папкам используя навигацию.
UserShutdownScript
/boot/home/config/settings/boot/UserShutdownScript будет выполнен в качестве первого этапа в процессе завершения работы. Если скрипт возвращает ненулевой результат по окончании, завершение работы прекращается.
UserShutdownFinishScript
/boot/home/config/settings/boot/UserShutdownFinishScript выполняется в последнюю очередь в процессе завершения работы. Имейте ввиду, что большинство элементов системы уже не функционируют во время выполнения этого скрипта.