跳转至

概论

概论

shell是我们通过命令行与操作系统沟通的语言。

shell脚本可以直接在命令行中执行,也可以将一套逻辑组织成一个文件,方便复用。

Terminal中的命令行可以看成是一个“shell脚本在逐行执行”。

Linux中常见的shell脚本有很多种,常见的有:

  • Bourne Shell(/usr/bin/sh/bin/sh)
  • Bourne Again Shell(/bin/bash)
  • C Shell(/usr/bin/csh)
  • K Shell(/usr/bin/ksh)
  • zsh

Linux系统中一般默认使用bash,所以接下来讲解bash中的语法。

文件开头需要写/bin/bash,指明bash为脚本解释器。


脚本示例

新建一个test.sh文件,内容如下:

1
2
#! /bin/bash
echo "Hello World!"

运行方式

作为可执行文件

将上面的代码保存为 test.sh,并 cd 到相应目录:

1
2
3
4
5
6
7
acs@9e0ebfcd82d7:~$ chmod +x test.sh  # 使脚本具有可执行权限
acs@9e0ebfcd82d7:~$ ./test.sh  # 当前路径下执行
Hello World!  # 脚本输出
acs@9e0ebfcd82d7:~$ /home/acs/test.sh  # 绝对路径下执行
Hello World!  # 脚本输出
acs@9e0ebfcd82d7:~$ ~/test.sh  # 家目录路径下执行
Hello World!  # 脚本输出

作为解释器参数

1
2
acs@9e0ebfcd82d7:~$ bash test.sh
Hello World!  # 脚本输出