Faça isso em uma subshell:
$ (. /path/to/envsetup.sh; runtool)
Se houver apenas algumas alterações de ambiente, você poderá fazê-las na linha de comando:
$ FOO=a BAR=b runtool # FOO and BAR will be set only for runtool
Você também pode usar um subshell real se antecipar várias coisas:
$ bash
$ : this is a subshell
$ . /path/to/envsetup.sh
$ thing1
$ thing2
$ : ...
$ exit
$ : this is the original shell
Você pode querer incluir $SHLVL
no seu $PS1
para o último, então é mais fácil dizer que você está em um subshell. Eu também verifico uma variável de ambiente (não padrão) $PSYS
e imprimo se definida, como uma espécie de "rótulo" para o ambiente.