Respuestas:
Parece que puede prefijar su script con el env -ique borrará el entorno antes de ejecutar el script:
env -i sh test.sh
De man env:
-i, --ignore-environment
start with an empty environment
Aunque no estoy seguro de por qué querrías hacer esto ...
chsh .... Si solo abro una ventana de terminal y ejecuto zsho fish(con o sin -limportancia) contamina mi entorno con todo tipo de variables desde shell Lo empecé. Hacer el truco env -cresuelve este problema para mí. Sí env -i TERM=xterm-256color $(which fish).
Hasta donde yo sé, la respuesta es "No". Puede anular las variables ambientales dentro del script mismo. El valor de la variable de entorno debería volver a su valor original una vez que el script haya terminado de ejecutarse. Probablemente necesite ejecutar el script como un proceso secundario: $ this.script.sh & para evitar tener que cerrar sesión en su shell cada vez que ejecute el script para restablecer las variables de entorno a su valor original.
Editar:
De un póster anterior, parece que estoy equivocado acerca de que no sea posible.