Linux中shell和子shell一点点理解
Linux执行脚本有两种方式,主要区别在于是否建立子shell 1、像sh,bash,./命令是用来执行shell脚本的,在bash/sh命令下,脚本文件可以无"执行权限",即没有rwx中的x权限。而对于./命令,脚本文件必须要有执行权限。 创建子shell,在当前bash环境下再新建一个子shell执行脚本中的命令子shell继承父shell的变量,但子shell不能使用父shell的变量,除非使用export声明为环境变量 子Shell从父Shell继承得来的属性如下: 当前工作目录 环境变量 标准输入、标准输出和标准错误输出 所有已打开的文件标识符 子Shell不能从父Shell继承的属性: 除环境变量和.bashrc文件中定义变量之外的Shell变量 2、source和.执行文件不会生成子shell 不创建子shell,在当前shell环境下读取并执行脚本中的命令,相当于顺序执行脚本里面的命令
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

更多精彩