注意:我这里说的shell脚本是Bash Shell,其他类型的shell脚本不保证有效
1,方式一:进入shell文件所在目录 ./my.sh执行
./my.sh
./的意思是说在当前的工作目录下执行my.sh
方式二:绝对路径的方式执行:
/shell/my.sh
方式三:进入shell文件所在目录直接使用bash 或sh 来执行:
bash my.sh
或
sh hello.sh
注意,若以方式三来执行,可以不必事先设定shell的执行权限,甚至都不用写shell文件中的第一行(指定bash路径)。因为方式三 是将my.sh作为参数传给sh(bash)命令来执行的。这时不是my.sh自己来执行,而是被调用执行,所以可以不要执行权限。
方式四:在shell文件所在目录执行:
. my.sh
或
source my.sh
前三种方式执行shell脚本时都是在当前shell(称为父shell)开启一个子shell环境,此shell脚本就在这个子shell环境中执行。shell脚本执行完后子shell环境随即关闭,然后又回到父shell中。而方法四则是在当前shell中执行的。