括号开始一个子shell:shell调用fork
,括号内的命令在子进程中执行。父进程等待子进程退出,然后恢复执行。所以发生的事情是:
- 的执行
cd /dir1
:shell 执行chdir("/dir1")
。
- 括号的执行:shell调用
fork
,然后父进程等待子进程退出。
- 执行
cd $HOME
:子shell执行chdir("/home/jurgen")
。
- 子shell 已用完命令,因此退出。
- 子外壳已退出,因此
wait
父外壳中的调用返回。
- 执行
pwd
:shell 打印其当前目录,即/dir1
.