Guida dell'utente

# 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

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

## 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

Su 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à, sarà necessario creare i file richiesti. Altrimenti basterà aggiungere i comandi nel punto corrispondente alla fase del processo nel quale si desidera che i file vengano eseguiti.

### L'UserBootscript

/boot/home/config/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/boot/launch. E' sufficiente cliccare con il tasto destro sull'applicazione che si desidera avviare automaticamente, andando su Crea Link e navigando fino alla cartella indicata.

### 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.

### L'UserShutdownFinishScript

/boot/home/config/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.