shell 脚本就是一个包含一系列命令的文件。shell 读取这个文件,然后执行 文件中的所有命令,就好像这些命令已经直接被输入到了命令行中一样。

Shell 有些独特,因为它不仅是一个功能强大的命令行接口,也是一个脚本语言解释器。我们将会看到, 大多数能够在命令行中完成的任务也能够用脚本来实现,同样地,大多数能用脚本实现的操作也能够 在命令行中完成。

怎样编写一个 Shell 脚本

为了成功地创建和运行一个 shell 脚本,我们需要做三件事情:

  1. 编写一个脚本。
  2. 使脚本文件可执行。
  3. 把脚本放置到 shell 能够找到的地方

脚本文件格式

为了保持编程传统,我们将创建一个 “hello world” 程序来说明一个极端简单的脚本。所以让我们启动 我们的文本编辑器,然后输入以下脚本:

#!/bin/bash
# This is our first script.
echo 'Hello World!'


对于脚本中的最后一行,我们应该是相当的熟悉,仅仅是一个带有一个字符串参数的 echo 命令。 对于第二行也很熟悉。它看起来像一个注释,我们已经在许多我们检查和编辑过的配置文件中 看到过。关于 shell 脚本中的注释,它们也可以出现在文本行的末尾,像这样:

echo 'Hello World!' # This is a comment too

文本行中,# 符号之后的所有字符都会被忽略。

类似于许多命令,这也在命令行中起作用:

[me@linuxbox ~]$ echo 'Hello World!' # This is a comment too
Hello World!

可执行权限

下一步我们要做的事情是让我们的脚本可执行。使用 chmod 命令,这很容易做到:

[me@linuxbox ~]$ ls -l hello_world
-rw-r--r-- 1  me    me      63  2009-03-07 10:10 hello_world
[me@linuxbox ~]$ chmod 755 hello_world
[me@linuxbox ~]$ ls -l hello_world
-rwxr-xr-x 1  me    me      63  2009-03-07 10:10 hello_world