如果我这样做:
$ env
它将打印出所有环境变量。有没有一种方法可以删除所有变量,而无需在bash中单独遍历它们?
答案 0 :(得分:5)
是的,但是要小心您想要的东西:
$ unset $(env | awk -F= '{print $1}') && env
bash: env: No such file or directory
对第二次环境的调用失败,因为PATH
已被删除。
另一个选择可能是exec -c
,它可以在没有环境的情况下从子shell执行某些命令。但是,如果您担心环境中的东西太多,那么更好的方法是回头看看多余的东西来自何处,然后从那里清理掉。