Shell脚本
Shell脚本是一种为Shell编写的脚本程序。
由于习惯的原因,本文出现的“Shell编程”都是值shell脚本编程,不是指开发Shell本身。
Shell环境
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)
- Shell for Root(/sbin/sh)
- ……
由于易用和免费,Bash(Bourne Again Shell)在日常工作中被广泛应用,同时,他也是大多数Linux系统默认的Shell。一般情况下,人们并不区分Bourne Again Shell和Bourne Shell,所以 #!/bin/sh 同样也可以改成 #!/bin/bash
#! 告诉系统其后的路径所指定的程序就是解释此脚本文件的Shell脚本。
PS:
#!/bin/bash #告诉系统需要用什么解释器来执行 echo "Hello World !" #echo命令用于向窗口输出文本
运行脚本的方法
1、作为可执行程序
将脚本保存为test.sh,并cd 到相应目录:
chmod +x ./test.sh #使脚本具有执行权限 ./test.sh #执行脚本
注意,一定要写成 ./test.sh ,而不是test.sh,运行其他二进制的程序也一样,直接写test.sh ,Linux系统会去PATH里寻找有没有叫test.sh的,而只有/bin,/sbin,/usr/sbin等在PATH里,你的当前目录通常不在PATH里,所以写成test.sh是会找不到命令的,要用./test.sh告诉系统,就在当前目录寻找。
2、作为解释器参数
这种运行方式是,直接运行解释器,其参数就是Shell脚本的文件名,如:
/bin/sh test.sh /bin/php test.php
这种运行方式是,不需要在第一行指定解释器的信息,写了也没用。
本文参考:https://www.runoob.com/linux/linux-shell.html