有很多方式可以执行脚本,用于读取并执行test.sh中的命令,区别如下:
source test.sh
执行过程不另开进程,脚本文件中设定的变量在当前shell中可以看到
. test.sh
./test.bsh
在当前进程另开子进程来执行脚本命令,脚本文件中设定的变量在当前shell中不能看到
sh test.sh
例如:
liuwanpeng@ubuntu:~$ cat test.sh
echo "pid in test.sh" $$
var=123liuwanpeng@ubuntu:~$ echo $$
8574
liuwanpeng@ubuntu:~$ unset var;source test.sh ;echo $var
pid in test.sh
8574
liuwanpeng@ubuntu:~$ unset var;. test.sh ;echo $var
pid in test.sh 8574
123
liuwanpeng@ubuntu:~$ unset var;./test.sh ;echo $var
pid in test.sh 8670
iuwanpeng@ubuntu:~$ unset var;sh test.sh ;echo $var
pid in test.sh 8671
转载请注明原文地址: https://ju.6miu.com/read-965172.html