本节的翻译还未完成。在未完成之前,所有的未完成部分都将使用英语原文。

Bash 和脚本

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

index Bash

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

index 脚本圣经

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

indexHaiku的脚本

Haiku used to have scripts for booting and shutting down. Today it uses the launch_daemon 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.

index UserBootscript 脚本

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

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

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

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

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

index UserShutdownScript 脚本

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

index UserShutdownFinishScript 脚本

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