linux 中的source命令

linux 中的source命令

source命令是bash中的内建命令,它等同于点命令(.),用于读取和在当前shell环境中执行指定文件中的命令,执行完毕之后退出码为该文件中的最后一个命令的退出码,指定的文件可以没有执行权限(没有权限是指该文件没有rwx中x的权限,也就是可执行到权限,这里到意思是说,即使该文件没有可执行权限,通过source也可以执行他)。

在当前shell中执行(source是在当前shell中执行的)和在子shell中执行的区别是,后者定义的变量和函数在执行结束后就消失了,而前者却可以保留下来。有时候我们修改了/etc/profile里面的内容,如增加了环境变量,那么要立即生效的话,就必须使用source(source  /etc/profile)命令或者点命令在当前shell中执行一下。

代码如下:

fun1(){
a=3
}
fun1

运行如下:


其中,unset  a 是删除变量a,可以看到打印出空行,也可以看到 source  和   .  是等价的。

如果直接执行此文件,如下:


可以看到,函数执行后变量消失了。


参考地址:http://codingstandards.iteye.com/blog/837935


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值