脚本不同执行方式的影响
脚本的4种执行方式
bash ./filename.sh
./filename.sh
source ./filename.sh
. ./filename.sh
脚本不同执行方式的影响
产生子进程
bash ./filename.sh./filename.sh不产生子进程
source ./filename.sh. ./filename.sh示例
demo.sh
cat > demo.sh << EOF
cd /tmp
pwd
EOF
产生子进程的运行方式的结果
[root@localhost ~]# bash demo.sh
/tmp
[root@localhost ~]# pwd
/root[root@localhost ~]# chmod u+x demo.sh
[root@localhost ~]# ./demo.sh
/tmp
[root@localhost ~]# pwd
/root不产生子进程的运行方式的结果
[root@localhost ~]# source ./demo.sh
/tmp
[root@localhost tmp]# pwd
/tmp[root@localhost ~]# . ./demo.sh
/tmp
[root@localhost tmp]# pwd
/tmp内建命令和外部命令的区别
内建命令不需要创建子进程
内建命令对当前 Shell 生效
Last updated