env -i "$BASH" -c 'your code here'
Iniciaria um novo interpretador bash
para interpretar your code here
em um ambiente inicialmente vazio.
Como é uma nova instância de bash
, ela não herdaria os aliases, parâmetros posicionais, variáveis não exportadas, funções.
Com o env -i
, ele também não herdaria as variáveis e funções exportadas (definidas pela chamada bash
ou possivelmente herdadas anteriormente).
Ele ainda herdaria alguns outros tipos de atributos que são preservados em execução de comandos e bifurcações como umask
, descritores de arquivos abertos sem o sinalizador close-on-exec, limites, algumas disposições de sinal (como trap '' INT
in o chamador também faria com que o SIGINT fosse ignorado no receptor).