用户指南

# Bash 和脚本

“撰写脚本”就是把命令组织成可以自动执行的程序，然后把它保存为文本文件，而该文件就称为“脚本”。每次执行脚本时，这些命令则依次执行，和您在终端中输入命令的顺序相同。
脚本既可以用于执行一些简单的命令，也可以通过构建成熟的代码来解决复杂的任务。

## Bash

由于脚本非常依赖于它们的解释器Shell，所以您必须非常地了解Haiku所使用的BASH。Bash的使用非常广泛，所以网上的资源也非常多。其中 Johan Jansson 的 bash介绍 - BeOS的bash教程就是一个非常好的文档。

## 脚本圣经

在您了解了Shell的基础之后，您可以慢慢的让自己融入脚本的世界。同时，您会在网上或者书店里找到许多相关的教程和参考资料。 其中有一个非常好的介绍资料就是Scot Hacker的BeOS圣经中的 Scripting Chapter（PDF, 900kb），它是专为 Haiku 系统所定制的。

## Haiku的脚本

在Haiku系统中，当然也会用到脚本；其中系统的启动和关闭就是典型的脚本程序。这些确定的命令可以由用户脚本来进行扩充。
如果它们已经存在，您就需要自己来创建所需的文件。当然，你可以在脚本中适当的位置添加自己希望运行的命令。

### UserBootscript 脚本

/boot/home/config/boot/UserBootscript 脚本会在系统完成启动进程之后开始运行。例如，您可以在该脚本中添加一些命令来实现相关程序的自动启动：

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

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

需要注意的是，要在命令之后添加 "`&`" 字符，使其作为后台进程运行，否则该脚本将会中止运行直到该命令完成 （这种情况下：已启动的程序将会被关闭）。

对于上述的启动程序，另一种方式是把它们的快捷方式放入 /boot/home/config/boot/launch 目录。右键点击你希望自动启动的程序，选择 Create Link ，然后导航至上述目录。

### UserShutdownScript 脚本

/boot/home/config/boot/UserShutdownScript 是系统关机进程的第一个步骤。如果该脚本返回一个非零的结束状态，则系统关闭失败。

### UserShutdownFinishScript 脚本

/boot/home/config/boot/UserShutdownFinishScript 是结束进程的最后一个步骤。需要注意的是，在该脚本执行之前，大部分的系统进程已经终止。