shell脚本执行的方法

例如以下shell脚本cd.sh    它的目的是把当前终端切换到/mnt/hgfs/OSP/client目录下。shell

 

#!/bin/shspa

cd /mnt/hgfs/OSP/client变量

pwdcli

 

执行方法一:   ./cd.sh 终端

结果:目录没有切换,可是会在终端上打印一行:/mnt/hgfs/OSP/client方法

解释:这样执行的话终端会产生一个子shell,子shell去执行个人脚本,在子shell中已经切换了目录了,可是子shell一旦执行完,立刻退出,子shell中的变量和操做所有都收回。回到终端根本就看不到这个过程的变化。总结

 

执行方法二:source cd.sh脚本

结果:目录被切换到/mnt/hgfs/OSP/client,且在终端上打印一行:/mnt/hgfs/OSP/client生成

解释:这时候就是直接在当前终端的shell执行脚本了,没有生成子shell,执行的结果就是输出命令,而且切换了目录

 

总结:shell 脚本有两种执行的方法,一种是新产生一个shell,而后执行相应的shell脚本;一种是在当前shell下执行,再也不启用其余shell。

相关文章
相关标签/搜索