Risposte:
Sembra che puoi aggiungere il prefisso allo script con il env -iquale cancellerà l'ambiente prima di eseguire lo script:
env -i sh test.sh
Da man env:
-i, --ignore-environment
start with an empty environment
Non sono sicuro del motivo per cui vorresti farlo, però ...
chsh .... Se apro una finestra terminale ed eseguo zsho fish(con o senza -l, non importa) inquina il mio ambiente con tutti i tipi di variabili dal shell Ho iniziato. Fare il trucco env -crisolve questo problema per me env -i TERM=xterm-256color $(which fish).
Una possibilità (anche se sembra piuttosto brutta):
exec -c $SCRIPTinizierà $ SCRIPT con un ambiente vuoto. (vedi man bashricerca per exec \[-cl\]).
Per quanto ne so, la risposta è "No". È possibile ignorare le variabili ambientali all'interno dello script stesso. Il valore della variabile d'ambiente dovrebbe tornare al suo valore originale una volta eseguita l'esecuzione dello script. Probabilmente dovrai eseguire lo script come un processo figlio: $ this.script.sh e così da evitare di dover uscire dalla shell ogni volta che esegui lo script per ripristinare le variabili di ambiente al loro valore originale.
Modificare:
Da un poster precedente, sembrerebbe che mi sbagli sul fatto che non sia possibile.