前言
不同的 script 执行方式会造成不一样的结果,尤其对 bash 的环境影响很大,脚本的执行方
式有大概以下几种方式。
首先写一个简单的 test.sh 文件:
#!/bin/bash
read -p "Please input your first name:" firstname
read -p "Please input your last name:" lastname
echo -e "Your full name is: $firstname $lastname"
1
2
3
4
5
使用 sh test.sh 执行
使用 sh test.sh 来执行 script 文件,该方法标明使用 sh 这种 shell 来执行 test.sh 文件,sh
已经是一种被 bash 替代的 shell,尽管我们在 test.sh 中声明使用 #!/bin/bash 来执行我们的
文件,但此时使用 sh 而不是 bash,则#!/bin/bash 已不起作用。
使用 bash test.sh 执行
该方法其实与 sh test.sh 的原理一样,只是使用了 /bin/bash 该种 shell 来执行我们的脚本
文件。
所以,其实使用 dash test.sh' 也是可以的,只是取决于自己想使用那种 shell 来执行脚本,
但 sh、bash、dash 三者有些许差别,对于部分关键字如 let,bash 支持,而 sh 和 dash 并不
支持,对于部分关键字则选择使用 bash。
使用点 . 执行