考虑以下命令:
export set value=7
echo $value
export set value=70|echo $value
现在我们得到的输出:
7
7
但是,第二种情况不应该是 70 吗?
有人会解释我所缺少的东西。
答案1
管道中的每个命令都在其自己的 shell 中执行,因此您export set value=70
在无法修改父 shell 的子 shell 中运行,因此echo $value
看不到更改值的尝试。
另外,对于 POSIX shellset
不需要分配给变量,你可以这样做export value=70