exec跟source的差别

进程(process)的观念

我们所执行的任何程式,都是由父进程(parent process)所产生出来的一个子进程(child process),

子进程在结束后,将返回到父进程去,此现在在Linux系统中被成为fork。

当子进程被产生的时候,将会从赴京成哪里获得一定的资源分配/及(更重要的是)继承赴京成的环境!

*所谓环境变量其实就是那些会传给子进程的变量。

*环境变量只能从父进程到子进程单向继承。即:在子进程中的环境变量如何变更,均不会影响父进程的环境。


source

*所谓的source就是让script在当前shell内执行/而不是产生一个sub-shell來执行。

由于所有执行结果均于当前舍勒拉内完成,若script的环境有所改变,当然也会改变当前的环境!

有如下两种方法使script在当前的shell内执行:

source ./my.script
或:
. ./my.script


exec

*exec也是让script在同一个进程上执行,但是原有的进程则被结束了。

也就是说,原有进程会被终止,就是exec与source/fork的最大差异。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值