web-dev-qa-db-fra.com

Comment définir une variable d'environnement pour une seule commande dans csh / tcsh

En bash, je peux définir une variable d'environnement temporaire pour une seule commande comme celle-ci:

LD_LIBRARY_PATH=/foo/bar myprogram

Puis-je faire quelque chose de similaire dans csh/tcsh? je pourrais faire

setenv LD_LIBRARY_PATH /foo/bar; myprogram; unsetenv LD_LIBRARY_PATH

, mais cela perdra toute valeur précédente de la variable.

43
Tor Klingberg

Dans csh, vous pouvez soit essayer env:

% env LD_LIBRARY_PATH=/foo/bar myprogram

ou, un sous-shell:

% (setenv LD_LIBRARY_PATH /foo/bar; myprogram)
62
dogbane