Ubuntu:`env -i bash --norc`,但包括基本变量,例如 HOME、DISPLAY?(这些在哪里设置?)

Ubuntu:`env -i bash --norc`,但包括基本变量,例如 HOME、DISPLAY?(这些在哪里设置?)

有没有一种简单的方法可以隔离 bash 会话,以便只保留必要的变量(、、HOME等)?(如果没有设置 HOME、DISPLAY、TERM、SHELL 等,许多程序都会失败,因此这种方法至关重要)。也就是说,有人知道这些变量设置在哪里吗?USERDISPLAY

我曾尝试将这一行添加test -n "${NO_ALIASES+D}" && return 0到我的~/.bash_aliases(我没有做任何额外的事情~/.bashrc),所以~/.bashrc如果我这样做,就会得到一个原始的

env -i NO_ALIASES=1 bash

但这些变量仍然缺失。

我也在/etc/profile隔离的 shell 中尝试过源,但是无济于事。

确实有效的是手动传递:

env -i HOME=$HOME DISPLAY=$DISPLAY SHELL=$SHELL TERM=$TERM bash --norc

相关内容