改变当前shell工作目录

执行脚本时候,只是在当前的shell下开了一个子进程,切换目录的操作只对该进程中相关后续指令有效,但改变不了父进程的目录。 
解决方法:

法一: 用 source a.sh就行了。

法二:
[fedora@localhost ~]$ cd ~
[fedora@localhost ~]$ chmod u+x a.sh
[fedora@localhost ~]$ . ./a.sh 
/
complete
[fedora@localhost /]$ 

对于 $ . ./a.sh 
第一个点是bash的内部命令,表示在当前shell中运行 
后面的“./a.sh”是命令的参数,即要执行的脚本 
注:两点之间要有空格

 

#!/bin/sh
echo "Go to Advanced Programming Unix Environment Demos Dir!"
cd  /home/user1/workspace/c_cpp/advanced_programming_unix_env/apue_demos
pwd

 

posted @ 2016-04-26 14:57  庚武  Views(4433)  Comments(0Edit  收藏  举报