bash;"./";".";source运行脚本的区别

bash与./ 和source与. 运行脚本的区别(source和.等价)。下面我们详细解释一下,

bash;"./";".";source运行脚本的区别

如图所示,PPID父进程 ,当前进程为$$。

bash;"./";".";source运行脚本的区别

source命令即点(.)命令,在bash下输入man source,找到source命令解释处,可以看到解释"Read and execute commands from filename in the current shell environment and ..."。从中可以知道,source命令是在当前进程中执行参数文件中的各个命令,而不是另起子进程。

bash;"./";".";source运行脚本的区别

bash和"./"命令都是打开一个子shell来读取并执行FileName中命令。该filename文件可以无“执行权限”。
当然,配置文件就是影响当前的工作环境,这种情况下用source。**

猜你喜欢

转载自blog.51cto.com/13877926/2154845