前三个是表示在当前的父shell中生成一个子shell来运行*.sh文件
- sh test.sh
- bash test.sh
- ./test.sh (./和test.sh之间没有空格切实在文档所在的目录下文件要有执行权限这个命令无法自动补全)
- /etc/test.sh (全路径的情况下执行文件要有执行权限)
最后的这两种是相当于在父shell进程中的一部分运行,就是没有生成子进程的shell来运行*.sh文件
- . test.sh (注意. 和 test.sh之间有空格)
- source test.sh(类似于加载文件的意思)