La bash e lo "scripting"
Lo "scripting" è una tecnica che consente l'esecuzione automatica di procedure tramite la concatenazione dei comandi che vengono salvati in un file di testo e prendono il nome di "script". Ogni volta che uno script viene eseguito, i comandi vengono eseguiti uno dopo l'altro, esattamente come se venissero digitati a mano direttamente nel Terminale.
Gli script possono variare dalla semplice esecuzione di alcuni comandi in un preciso ordine fino a sofisticati pezzi di codice in grado di risolvere compiti complessi.
La 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.
La bibbia dello scripting
Dopo aver appreso alcune nozioni di base su come lavorare nella shell, è il momento di entrare lentamente nel mondo dello scripting. Online si possono trovare molti di tutorial e diverso materiale di riferimento, ad esempio un'introduzione molto buona, scritta su misura per Haiku è Scripting Chapter (PDF, 900kb) dalla BeOS Bible di Scot Hacker (in lingua inglese).
Gli script in 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.
L'UserBootscript
/boot/home/config/settings/boot/UserBootscript viene eseguito solo dopo che il sistema ha terminato il processo di avvio. Per esempio, si potrebbero lanciare automaticamente dei programmi ad ogni avvio del sistema:
# Start LaunchBox /boot/system/apps/LaunchBox & # Start Workspaces Applet /boot/system/apps/Workspaces &
Si consiglia di terminare i comandi con il carattere "&" in modo da avviarli in background, altrimenti lo script si fermerà soltanto quando il comando avrà terminato la sua esecuzione (in questo caso: fin quando l'applicazione non viene chiusa).
Per lanciare le applicazioni all'avvio esiste una semplice alternativa a quella presentata all'inizio del paragrafo, consiste nel creare dei collegamenti alla cartella /boot/home/config/settings/boot/launch. E' sufficiente cliccare con il tasto destro sull'applicazione che si desidera avviare automaticamente, andando su e navigando fino alla cartella indicata.
The UserShutdownScript - not yet working
/boot/home/config/settings/boot/UserShutdownScript verrà eseguito come primo passo nel processo di spegnimento. Se lo script ritorna uno stato diverso da 0, lo spegnimento viene arrestato.
The UserShutdownFinishScript - not yet working
/boot/home/config/settings/boot/UserShutdownFinishScript verrà eseguito come ultimo passo nel processo di spegnimento. Si noti che la maggior parte del sistema sarà già stato terminato al momento dell'esecuzione di questo script.