您的位置:首页 > 运维架构 > Shell

Shell环境和变量生存期-export和source

2013-04-19 23:01 330 查看
如题,关于shell环境和变量生存期,有以下结论:

1、执行脚本时,脚本中的语句是在一个子shell环境中运行的,脚本执行完后该子shell自动退出;
2、一个shell中的系统环境变量才会被复制到子shell中(用export定义的变量);
3、一个 shell中的系统环境变量只对该shell或者它的子shell有效,该shell结束时变量消失(并不能返回到父shell中);
3、不用 export定义的变量只对该shell有效,对子shell也是无效的。
4、用source执行一个脚本,相当于在当前Shell环境下执行该脚本中的语句,并没有父子的关系。

但是能否使用source这个命令,跟脚本中定义使用的脚本解析器有关,根据本人尝试的结果,如果使用sh而不是bash作为脚本执行的解析器,会出现
“source: not found”的错误提示

注:该命令通常用命令“.”来替代。

如:source .bash_rc 与 . .bash_rc 是等效的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: