Guía del usuario

# Bash y scripting

"Scripting" es la técnica de automatizar procesos concatenando órdenes y guardándolas como un fichero de texto, llamados "scripts". Cada vez que se inicia un script, las órdenes son procesadas una tras otra como si se hubiesen escrito en la Terminal a mano.
Los scripts van desde simples ejecuciones de órdenes en un orden específico hasta sofisticados trozos de código que resuelven tareas complejas.

## Bash

Ya que los scripts dependen instintivamente del shell en el que se ejecutan, primero debería familiarizarse con el BASH utilizado en Haiku. Existen muchos recursos en línea ya que es un tipo de shell comúnmente utilizado. Un buen documento es Introducción a Bash - Un tutorial de bash bajo BeOS escrito por Johan Jansson's.

## La Biblia del Scripting

Después de que haya aprendido algunas cosas básicas acerca de cómo trabajar en la shell, es hora de introducirse lentamente en el mundo del scripting. De nuevo, se encontrará con montones de tutoriales y referencias en línea así como en librerías. Una buena introducción que está prácticamente realizada para Haiku es el Capítulo de Scripting (PDF, 900kb) de la Biblia del Hacker de BeOS.

## Scripts en Haiku

En Haiku, el sistema hace uso también del scripting. El inicio y el apagado son típicos procedimientos de scripting. Estas secuencias definidas pueden ser aumentadas por el usuario mediante ciertos scripts de usuario.
Si todavía no existen, tendrá que crear los ficheros necesarios usted mismo. En caso contrario, simplemente añada las órdenes donde quiere que se ejecuten durante el proceso.

### El UserBootscript (Script de arranque de usuario)

/boot/home/config/boot/UserBootscript será ejecutado después de que el sistema haya terminado su proceso de arranque. Por ejemplo, puede lanzar programas que serían iniciados automáticamente en cada arranque:

    # Iniciar LaunchBox
    /boot/system/apps/LaunchBox &

    # Iniciar Applet de espacios de trabajo
    /boot/system/apps/Workspaces &

Recuerde que debe finalizar cada orden mediante un "`&`" para iniciarlo como un proceso en segundo plano, o el script se detendrá hasta que esa orden haya sido finalizada (en este caso, hasta que la aplicaciones iniciada se cierre de nuevo).

Una alternativa sencilla a lo mostrado anteriormente para lanzar aplicaciones en el inicio es poner enlaces a las mismas en directorio /boot/home/config/boot/launch. Esto se puede hacer simplemeetne mediante un clic derecho en la aplicación que quiere que se inicie automáticamente yendo a Create Link (Crear enlace) y luego navegar al directorio mostrado antes.

### El UserShutdownScript

/boot/home/config/boot/UserShutdownScript será ejecutado como el primer paso en el proceso de apagado. Si el script devuelve un estado de salida diferente de cero, el proceso de apagado es abortado.

### El UserShutdownFinishScript

/boot/home/config/boot/UserShutdownFinishScript es ejecutado como el último paso en el proceso de apagado. Hay que tener en cuanta que la mayor parte de los componentes de sistema ya han sido finalizados en el momento que se ejecuta este script.