当前位置: 移动技术网 > 科技>操作系统>Linux > Linux中shell和子shell一点点理解

Linux中shell和子shell一点点理解

2018年11月14日  | 移动技术网科技  | 我要评论
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环境下读取并执行脚本中的命令,相当于顺序执行脚本里面的命令

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网