Skip to content

Shell脚本的执行

1. 作为可执行程序

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

chmod +x ./test.sh  #使脚本具有执行权限
./test.sh  #执行脚本

chmod 是一个Linux命令,用于修改文件的权限。本例中的 +x 即赋予文件可执行的权限。

注意 一定要写成 ./test.sh ,而不是 test.sh,运行其它二进制的程序也一样,直接写 test.sh,linux 系统会去 PATH环境变量里寻找有没有叫 test.sh 的可执行程序,而只有 /bin, /sbin, /usr/bin,/usr/sbin 等在 PATH环境变量里,你的当前目录通常不在 PATH 变量里,所以写成 test.sh 是会找不到命令的,要用 ./test.sh 告诉系统说,就在当前目录找。./即标识在当前的目录下。当然了,你也可以指定test.sh的绝对路径来执行。即从根目录/开始指定。

2. 作为解释器参数

这种运行方式是,直接运行解释器,其参数就是 shell 脚本的文件名,如:

/bin/bash test.sh
#或者
bash test.sh

这种方式运行的脚本,不需要在第一行指定解释器信息,即可以不用写 #!/bin/bash