打开Terminal,使用vim新建一个hello.sh文件,输入以下代码
#!/bin/bash
echo "Hello Shell !"
“#!” 是一个约定的标记,它告诉系统这个脚本需要哪种Shell解释器来执行,以下是几种常用的脚本解释器。
#!/bin/sh —使用sh,即Bourne shell或其它兼容shell执行脚本
#!/bin/csh —使用csh,即C shell执行
#!/usr/bin/perl -w—使用带警告的Perl执行
#!/usr/bin/python -O—使用具有代码优化的Python执行
#!/usr/bin/php —使用PHP的命令行解释器执行
运行Shell脚本有两种方法:
chmod +x hello.sh
./hello.sh
注意:一定要写成./hello.sh,而不是hello.sh,运行其它二进制的程序也一样,直接写hello.sh,系统会去PATH里寻找有没有叫hello.sh的,而只有/bin, /sbin, /usr/bin,/usr/sbin等在PATH里,你的当前目录通常不在PATH里,所以写成test.sh是会找不到命令的,要用./hello.sh告诉系统说,就在当前目录找。
通过这种方式运行bash脚本,第一行(#!/bin/bash)一定要写对,好让系统查找到正确的解释器。
/bin/sh test.sh
/bin/php test.php
这种方式运行的脚本,不需要在第一行指定解释器信息,写了也没用。
我比较经常的使用第一种方式运行,所以我会在所有脚本的第一行都写上‘#!/bin/bash’,我也建议大家这样做。