系统版本
[root@rsync-test01 ~]# cat /etc/redhat-release Red Hat Enterprise Linux Server release 6.8 (Santiago)
脚本内容
#!/bin/bash cd /u01/app/oracle/diag/rdbms/orcl/orcl/trace;
执行脚本,无法进入指定目录
[oracle@rsync-test01 ~]$ sh a.sh
修改脚本查看执行shell的pid,通过下面,我们可以看出,执行shell的pid不一致,也就是说,在执行shell的时候使用子shell进行执行
[oracle@rsync-test01 ~]$ cat a.sh #!/bin/bash echo $$; cd /u01/app/oracle/diag/rdbms/orcl/orcl/trace; [oracle@rsync-test01 ~]$ sh a.sh 58757 [oracle@rsync-test01 ~]$ echo $$ 58716
使用. 或者source执行脚本
[oracle@rsync-test01 ~]$ . a.sh [oracle@rsync-test01 trace]$