<p>"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 <ahref="applications/terminal.html">Terminal</a> a mano.<br/>
Los scripts van desde simples ejecuciones de órdenes en un orden específico hasta sofisticados trozos de código que resuelven tareas complejas.</p>
<p>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 <ahref="https://web.archive.org/web/20011205095723/http://www.beforever.com/bashtut.htm"class="printurl">Introduction to bash - a tutorial for bash under BeOS</a>.<br/>
The <ahref="https://www.gnu.org/software/bash/manual/bash.pdf"class="printurl">Bash Reference Manual (PDF, 720 KiB)</a> is a nice resource to get into the details.</p>
<aid="scripting-bible"name="scripting-bible">La Biblia del Scripting</a></h2>
<p>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 <ahref="http://www.birdhouse.org/beos/bible/bos/ch_scripting1.html"class="printurl">Capítulo de Scripting</a> (<ahref="http://www.birdhouse.org/beos/bible/bos/BeOS.scripting.PDF">PDF, 900kb</a>) de la Biblia del Hacker de BeOS.</p>
<h2>
<ahref="#"><imgsrc="../images/up.png"style="border:none;float:right"alt="index"/></a><aid="user-scripts"name="user-scripts">Scripts en Haiku</a></h2>
<p>Haiku used to have scripts for booting and shutting down. Today it uses the <ahref="https://dev.haiku-os.org/wiki/LaunchDaemon">launch_daemon</a> 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.</p>
<p><spanclass="path">/boot/home/config/settings/boot/UserBootscript</span> 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:</p>
<p>Recuerde que debe finalizar cada orden mediante un "<tt>&</tt>" 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).</p>
<p>Una alternativa sencilla a lo mostrado anteriormente para lanzar aplicaciones en el inicio es poner enlaces a las mismas en directorio <spanclass="path">/boot/home/config/settings/boot/launch</span>. Esto se puede hacer simplemeetne mediante un clic derecho en la aplicación que quiere que se inicie automáticamente yendo a <spanclass="menu">Create Link</span> (Crear enlace) y luego <ahref="tracker.html#navigating">navegar</a> al directorio mostrado antes.</p>
<p><spanclass="path">/boot/home/config/settings/boot/UserShutdownScript</span> 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.</p>
<p><spanclass="path">/boot/home/config/settings/boot/UserShutdownFinishScript</span> 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.</p>