据我所知,新运行的 shell 脚本会继承其环境变量。有没有办法阻止这种情况?(运行没有变量继承的 shell)
答案1
似乎您可以在脚本前加上前缀,env -i
以便在运行脚本之前清除环境:
env -i sh test.sh
从man env
:
-i, --ignore-environment
start with an empty environment
但不确定你为什么要这么做...
答案2
有一种可能性(尽管看起来很丑陋):
exec -c $SCRIPT
将以空环境启动 $SCRIPT。(参见man bash
搜索exec \[-cl\]
)。