在什么情况下shell的环境传递给子shell?
答案 0 :(得分:2)
子shell总是从父shell获取所有变量。
man bash
将描述使用子shell的所有情况,主要是:
command &
command | command
和
( command )
所谓的环境只包含环境变量(export variable
),并传递给每个子流程。甚至在调用bash -c command
时,它不是一个子shell而是一个全新的bash实例。
在这两种情况下,更改的值都不会传递回父进程。