Re: Mantenere una variabile d'ambiente ad ogni login
Ciao,
Il Gio, 15 Settembre 2011 2:53 pm, Manuel Durando ha scritto:
>> #! /bin/bash
>> GNOME_DESKTOP_SESSION_ID=1
>> export GNOME_DESKTOP_SESSION_ID
> C'è qualcosa che non va nello script:
Come giustamente dicevi tu nella prima mail, se imposti una variabile
d'ambiente in una shell, questa impostazione è efficace per i programmi
lanciati da quella shell e termina ogni effetto quando la shell termina.
Lo script di cui sopra viene eseguito da una shell bash, che imposta al
proprio interno una variabile d'ambiente, si predispone a esportarla a
tutti i processi _lanciati_da_questa_shell_, ma poi termina senza aver
lanciato nulla (quindi della variabile si perde immediatamente memoria).
Quindi:
o esporti la variabile in qualcosa come ~/.xinit (che lancia[va] il DM dal
quale solitamente si lanciano le altre finestre grafiche);
o la metti in un file come ~/.profile in modo che l'impostazione venga
letta da ogni shell lanciata dall'utente;
o, come ti hanno suggerito ed hai fatto, fai uno script che imposta la
variabile e lancia il programma.
In quest'ultimo caso, tieni conto che non serve ripristinare lo stato
precedente della variabile, visto che quando lo script esce, la shell che
lo ha eseguito termina e della variabile si perde memoria in ogni caso,
come spiegato sopra.
Ciau,
m
--
http://bodrato.it/software/
Reply to: