Toon posts:

Environment variabelen onder TCSH

Pagina: 1
Acties:

Verwijderd

Topicstarter
V(r)aagje,

ik heb een stuk software dat een script wil gebruiken om een aantal environment variabelen in 1 klap in te kunnen stellen.

Het script ziet er uit als:

#!/bin/csh -f
setenv VAR waarde
setenv VAR2 waarde2
exit

Als ik het script draai krijg ik geen waarde in VAR als ze opvraag met "setenv"
Als ik op de commandline "setenv VAR waarde" intik dan komt de waarde wel in VAR als ik met "setenv" ze opvraag.
Zet ik het geheel in ".cshrc" dan vind ik de environment vars dus wel weer terug.

Waarom lukt het nu niet om pas NA inloggen een script te draaien dat allerlei variabelen instelt? Ik heb ook al geprobeerd de #!/bin/csh -f en exit regel weg te laten, maar met hetzelfde resultaat.

ik draai Linux Mandrake 8.2 met als standaard shell tcsh.

  • active2
  • Registratie: Juni 2001
  • Laatst online: 17-07 21:56

active2

Google is your friend

Dat klopt ook wel:

Je moet die waarde nog effe exporteren :)

dus:

setenv VAR waarde
export VAR

Google, Het mirakel van de 21e eeuw!!!!


  • _JGC_
  • Registratie: Juli 2000
  • Laatst online: 00:58
setenv is voor tcsh, export is voor Bash, zijn dus zo ongeveer gelijk aan elkaar en doen hetzelfde.
Probleem waar je tegenaan loopt:
tcsh start op, laadt je .tcshrc in en dat zijn de vars die gezet worden tijdens je sessie.
Als jij dan een bestandje maakt met nog meer setenvs, en je gaat die uitvoeren, wordt er nog een tcsh sessie geopend om dat script uit te voeren, worden de VARS gezet, en wordt de sessie weer gesloten. Resultaat: weg VARS :)

Verwijderd

Topicstarter
tja, daar was ik ook al achter, alleen... wat is nu de oplossing? er moet toch een mogelijkheid zijn om vars via een script aan je huidige omgeving toe te voegen?

  • Counter-Strike
  • Registratie: Maart 2000
  • Niet online

Counter-Strike

Maar ik speel het niet!

Je zou kunnen proberen om het scriptje vanuit de .cshrc te includen. Zie http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&threadm=3B24A2A0.55EA4011%40armann.de&rnum=5&prev=/groups%3Fq%3Dtcsh%2Binclude%26hl%3Den%26lr%3D%26ie%3DUTF-8%26selm%3D3B24A2A0.55EA4011%2540armann.de%26rnum%3D5 .

Ik weet niet of dit is wat je wilt en af het werkt, maar proberen kan geen kwaad toch? ;)

Succes!

Dit is het einde van deze mededeling. De mogelijkheid tot reageren is aanwezig!


Verwijderd

Topicstarter
Dat is precies wat ik nu doe.
De hele opzet is echter dat het account niet zomaar de software kan aanpassen zonder eerst bewust alle environment vars te zetten via het script (het gaat hier om software dat uit tig scripts bestaat die allemaal naar elkaar verwijzen en soms langdurige processen aansturen zoals het indexeren van grote text bestanden (20+ GB).

  • PrinsEdje80
  • Registratie: Oktober 2001
  • Laatst online: 01-01 15:26

PrinsEdje80

Holographic, not grated...

Probeer eens
code:
1
source script

waarbij script het naampje is van het script. Dan werkt het waarschijnlijk wel.

Used to be Down Under... Foto gallery


Verwijderd

Topicstarter
Weer wat geleerd, dit werkt wel. Soms is het antwoord toch zo simpel. Hartelijk dank.

  • PrinsEdje80
  • Registratie: Oktober 2001
  • Laatst online: 01-01 15:26

PrinsEdje80

Holographic, not grated...

Ik heb het probleem ook gehad. Vandaar...

Used to be Down Under... Foto gallery

Pagina: 1