Bash és szkriptek
A "szkriptelés" automatikus folyamatok összessége, melyeket szövegként adhatunk meg, és menthetünk egy szöveges fájlba, amiket "szkripteknek" hívunk. Minden alkalommal, amikor szkripteket futtatunk, a parancsok lépésről lépésre hajtódnak végre, épp úgy, mint amikor azokat a Terminálban adjuk ki kézzel.
A szkriptek az egyszerű parancsok futtatásától az összetettebb kódokig nagyon jól használhatóak.
A Bash
Since scripts rely naturally a lot on the shell they are interpreted by, you should first familiarize yourself with the BASH that's used by Haiku. There are many resources online as it's a widely used shell. One nice document is Johan Jansson's Introduction to bash - a tutorial for bash under BeOS.
The Bash Reference Manual (PDF, 720 KiB) is a nice resource to get into the details.
A Szkriptelés Bibliája
Miután megtanultad az alapokat a bash-ben való munkával kapcsolatosan, itt az ideje annak, hogy belevesd magad a szkriptelés világába. Ezzel kapcsolatosan is rengeteg információt, oktatóanyagot találsz az interneten és a könyvesboltokban is. Egy remek, kifejezetten Haiku-hoz készített interneten elérhető anyagot is tudunk ajánlani, Scot Hacker BeOS Bible című könyvéből Scripting Chapter (PDF, 900kb).
Szkriptek Haiku alatt
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
A /boot/home/config/settings/boot/UserBootscript akkor indul el, ha a rendszer befejezte a rendszertöltési folyamatot. Például számtalan programot indíthatunk automatikusan minden rendszertöltéskor:
# Start LaunchBox /boot/system/apps/LaunchBox & # Start Workspaces Applet /boot/system/apps/Workspaces &
Itt megjegyezném, hogy az "&" jellel végződő parancsok a háttérben fognak elindulni, és ott is futnak, amíg nem végeznek.
Egy alternatív megoldás a programok rendszertöltéskori elindítására az, ha a programot berakjuk a /boot/home/config/settings/boot/launch mappába. Ez úgy tehetjük meg, hogy a programon jobb gombbal kattintunk, és a helyi menüből a menüben megkeressük ezt a mappát.
UserShutdownScript
A /boot/home/config/settings/boot/UserShutdownScript a rendszer leállásakor elsőként indul el. Ha a szkript nem nullát ad vissza eredményként, akkor a rendszer megszakítja a leállítást.
UserShutdownFinishScript
A /boot/home/config/settings/boot/UserShutdownFinishScript a leállítási folyamat végezetével indul el. Itt megjegyezném, hogy a legtöbb rendszer-folyamat addigra már leáll.