← Back to team overview

sslug-teknik team mailing list archive

Re: export i sh-scripts

 

"Jakob Lund" <jakob@xxxxxx> writes:

> Hej 
> 
> Jeg er stødt ind i et underligt (synes jeg) problem.
> Jeg ønsker i et sh-script at skabe en environment variable. Dette prøver jeg som følger:
> 
> test.sh:
> ------------------------------------
> NY_VAR=/usr/enMappe
> export NY_VAR
> ------------------------------------
> 
> Når scriptet har kørt og jeg skriver:
> 
> echo NY_VAR
> 
> returneres en tom linie.
> Hvis jeg der i mod skriver de samme to kommandoer fra scriptet i bash (altså manuelt)
> så er alting i den fineste orden og variablen er gemt i environment variables.
> 
> Hvorfor sker dette?

Det er fordi skriptet kører som en selvstændig proces. Når skriptet er
færdig dør processen, og dens environment forsvinder sammen med alle
de variable den måtte have defineret. Det du ønsker er at source dit
skript, så det kører i din aktuelle shell. Hvis du prøver at skrive:

. test.sh

så kan det være det hjælper.

mvh
Peter Stubbe


References