PDA

View Full Version : variabile globale in bash


NeoNum6
10-09-2007, 23:00
ho uno script che mi connette a una rete wireless con proxy e filtro mac....
dovrei dare un
'export http_proxy:ecc..ecc'
ma non mi funziona...
cioè lo metto nel file così come lo scrivo sulla shell ma non và...
c'è un altro modo per esportare variabili globali?!?!

ilsensine
11-09-2007, 11:12
Non esistono le variabili di ambiente globali. export ha effetto per tutte le applicazioni invocate dal contesto dello script.

La cosa migliore è impostare quelle variabili al login, modificando ad es. /etc/profile

NeoNum6
11-09-2007, 11:54
si ma visto che il pc è un portatile, mi collego a reti wireless diverse, e perciò non mi và di impostare variabili che poi potrebbero non far funzionare le cose in altre reti...

ilsensine
11-09-2007, 12:03
Il problema non è passare da una rete all'altra (il default gateway viene aggiornato automaticamente), ma cambiare modalità di connessione, passando da una connessione diretta a una tramite proxy. Questo non può essere fatto in maniera ovvia in automatico; la strada più semplice che mi viene in mente è utilizzare uno squid proxy server locale, impostando sempre le variabili di ambiente per il proxy sull'indirizzo di squid locale, e preparare per esso due file di configurazione (uno per la connessione diretta, l'altro per appoggiarsi a sua volta a un proxy esterno). Dallo script che lancia la connessione wireless puoi quindi ricaricare squid con la configurazione appropriata.

NeoNum6
11-09-2007, 22:39
bhè lo vedo un tantino difficile fare una cosa del genere...anche perchè ci sarebbe da impostare un server proxy...

ilsensine
11-09-2007, 22:46
Non è complicato, c'è parecchia documentazione su squid.

NeoNum6
11-09-2007, 22:49
ci guarderò...anche se mi sembra davvero strano non riuscire tramite script a fare una cosa così semplice...

ilsensine
11-09-2007, 23:01
...se per te cambiare dall'esterno le variabili di ambiente di processi in esecuzione sembra banale... :)

darkbasic
11-09-2007, 23:52
Ma perchè scomodare squid che è un caching proxy? Non può farlo anche privoxy?

NeoNum6
12-09-2007, 09:19
in verità eseguendo più volte lo script mi accorgo che in maniera del tutto aleatoria ogni tanto una o l'altra(o entrambe) le variabili risultano corrette...però è strano...