La Bash e lo "Scripting"

Lo "scripting" è una tecnica che permette l'esecuzione automatica di procedure concatenando i comandi e salvandoli in un file di testo, i cosiddetti "script". Ogni volta che esegui uno script, i comandi vengono eseguiti uno dopo l'altro, esattamente come succederebbe se li digitassi a mano direttamente nel Terminale
Gli script possono variare dalla semplice esecuzione di alcuni comandi in uno specifico ordine fino a pezzi di codice sofisticati in grado di risolvere compiti complessi.

index La Bash

Dal momento che gli script si basano ovviamente sulla shell che li interpreta, bisogna prima familiarizzare con la BASH, la shell usata da Haiku. Ci sono molte risorse online dal momento che è una delle shell più usate. Un buon documento è Introduction to bash - a tutorial for bash under BeOS di Johan Jansson (in lingua inglese).

index La Bibbia dello Scripting

Dopo aver appreso alcune nozioni di base su come lavorare nella shell, è tempo di entrare lentamente nel mondo dello scripting. Ancora una volta, puoi trovare un sacco di tutorial e di materiale on-line di riferimento. Un'introdzione molto buona che praticamente è scritta su misura per Haiku, disponibile on-line è Scripting Chapter (PDF, 900kb) dalla bibbia di BeOS di Scot Hacker (in lingua inglese).

indexGli script in Haiku

In Haiku, anche il sistema fa uso dello scripting, l'avvio e lo spegnimento ne sono tipiche procedure. Queste sequenze possono essere estese dall'utente per mezzo di alcuni script.
Se non esistono già, dovrai creare i file necessari, altrimenti ti basterà aggiungere i comandi nella parte del file corrispondente al punto del processo nel quale vuoi che vengano eseguiti.

index L'UserBootscript

/boot/home/config/boot/UserBootscript verrà eseguito dopo che il sistema ha finito il suo processo di avvio. Per esempio, potresti lanciare un certo numero di programmi da essere eseguiti in automatico ad ogni avvio in questo modo:

# Start LaunchBox
/boot/system/apps/LaunchBox &

# Start Workspaces Applet
/boot/system/apps/Workspaces &

Ricordati però di terminare ogni comando con un "&" per avviare il processo in background, altrimenti lo script si interromperà soltanto quando il comando avrà terminato la sua esecuzione (in questo caso, quando viene chiusa l'applicazione).

Una semplice alternativa a quella presentata di sopra per lanciare applicazioni all'avvio, consiste nel creare dei collegamenti a queste nella cartella /boot/home/config/boot/launch. Questo può essere fatto semplicemente cliccando col tasto destro nell'applicazione che si desidera avviare automaticamente, andando su Crea Link e poi navigando fino alla cartella precedentemente citata.

index L'UserShutdownScript

/boot/home/config/boot/UserShutdownScript verrà eseguito come primo passo nel processo di spegnimento. Se lo script ritorna uno stato diverso da 0, lo spegnimento viene arrestato.

index L'UserShutdownFinishScript

/boot/home/config/boot/UserShutdownFinishScript verrà eseguito come ultimo passo nel processo di spegnimento. Nota che la maggior parte del sistema sarà già stato terminato da tempo quando questo script verrà eseguito.