[bash] esportare variabile da uno script [risolto]
Moderatore: Staff
Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
- sya54M
- Master

- Messaggi: 1665
- Iscritto il: mer 6 giu 2007, 14:44
- Nome Cognome: Andrea Peluso
- Slackware: 64-current
- Kernel: ultimo
- Desktop: KDE
- Località: (Salerno)
- Contatta:
[bash] esportare variabile da uno script [risolto]
salve, siccome export, se usato in uno script, può esportare le variabili solo ai processi a lui figli, come posso fare per usare una variabile generata da uno script in un altro script che non è figlio del primo?
si può fare qualcosa?
grazie mille
si può fare qualcosa?
grazie mille
Ultima modifica di sya54M il dom 24 mag 2009, 17:29, modificato 1 volta in totale.
Re: [bash] esportare variabile da uno script
Puoi farla salvare su file, dal quale la leggerà l'altro script.
Sicuramente ci sono modi più eleganti, ma questo mi pare il più semplice.
Sicuramente ci sono modi più eleganti, ma questo mi pare il più semplice.
- conraid
- Staff

- Messaggi: 13631
- Iscritto il: gio 14 lug 2005, 0:00
- Nome Cognome: Corrado Franco
- Slackware: current64
- Desktop: kde
- Località: Livorno
- Contatta:
Re: [bash] esportare variabile da uno script
Se gliela passi?sya54M ha scritto:salve, siccome export, se usato in uno script, può esportare le variabili solo ai processi a lui figli, come posso fare per usare una variabile generata da uno script in un altro script che non è figlio del primo?
si può fare qualcosa?
grazie mille
Codice: Seleziona tutto
nomescript pippoCodice: Seleziona tutto
VAR=$1- Paoletta
- Staff

- Messaggi: 3975
- Iscritto il: lun 25 apr 2005, 0:00
- Slackware: 14.2 - 64 bit
- Desktop: fluxbox
- Località: Varese
Re: [bash] esportare variabile da uno script
per fare quello che dici c'è bisogno che avvi i due script dalla medesima shell, cosa che ti puoi risparmiare con la soluzione del file; dipende da quel che deve fare sya54Mconraid ha scritto:Se gliela passi?sya54M ha scritto:salve, siccome export, se usato in uno script, può esportare le variabili solo ai processi a lui figli, come posso fare per usare una variabile generata da uno script in un altro script che non è figlio del primo?
si può fare qualcosa?
grazie millee poi in nomescript haiCodice: Seleziona tutto
nomescript pippoun po' come faresti in una applicazione php tramite get e post insommaCodice: Seleziona tutto
VAR=$1
- sya54M
- Master

- Messaggi: 1665
- Iscritto il: mer 6 giu 2007, 14:44
- Nome Cognome: Andrea Peluso
- Slackware: 64-current
- Kernel: ultimo
- Desktop: KDE
- Località: (Salerno)
- Contatta:
Re: [bash] esportare variabile da uno script
no perchè la variabile viene creata dal primo script, non è costante e il secondo non lo avvio manualmente.conraid ha scritto:Se gliela passi?
nomescript pippo
e poi in nomescript hai
VAR=$1
un po' come faresti in una applicazione php tramite get e post insomma
e infatti questo era il problema.Paoletta ha scritto:per fare quello che dici c'è bisogno che avvi i due script dalla medesima shell
se non ci sono altre soluzioni credo che farò come ha sugerito enzo.bak
grazie delle risposte
- Paoletta
- Staff

- Messaggi: 3975
- Iscritto il: lun 25 apr 2005, 0:00
- Slackware: 14.2 - 64 bit
- Desktop: fluxbox
- Località: Varese
Re: [bash] esportare variabile da uno script
immagino che l'unica alternativa sia proprio quella del file; del resto per avere i valori delle variabili settati sempre allo stesso modo ad ogni avvio di shell sono previsti i files tipo .bash_profile e simili
Re: [bash] esportare variabile da uno script
Credo che l'uso di "source" possa fare al caso tuo. Tipo
Da verificare con uno script meno banale, ovviamente, sempre che abbia capito il tuo intento...
Ciao
Codice: Seleziona tutto
#!/bin/sh
# mioscript1.sh
VAR=`echo ciao`
Codice: Seleziona tutto
#!/bin/sh
# mioscript2.sh
. mioscript1.sh
echo $VAR
Ciao
- sya54M
- Master

- Messaggi: 1665
- Iscritto il: mer 6 giu 2007, 14:44
- Nome Cognome: Andrea Peluso
- Slackware: 64-current
- Kernel: ultimo
- Desktop: KDE
- Località: (Salerno)
- Contatta:
Re: [bash] esportare variabile da uno script
@urka58: se in questo modo include solo le variabili del primo script e non comporta altro e se io ho immaginato bene quello che fa allora credo che hai azzeccato
Re: [bash] esportare variabile da uno script
Esegue tutti i comandi inclusi nello script, non so se per il tuo scopo sia un bene o un male. Per superare l'ostacolo puoi creare un file di sole definizioni delle variabili che vengono richiamate tramite il "source" di tale file negli script che le utilizzano. L'eventuale file deve essere nel PATH dell'utente che lancia lo script/s. (o usi il percorso completo).sya54M ha scritto:@urka58: se in questo modo include solo le variabili del primo script e non comporta altro e se io ho immaginato bene quello che fa allora credo che hai azzeccato
In questo caso la soluzione non è molto diversa da quella già proposta di un file su cui vengono scritte le variabili. che costringe comunque ad eseguire il primo script. Con il "source" del file contenente la definizione delle variabili. esegui solo lo script che ti serve per l'occasione.
Ciao
- sya54M
- Master

- Messaggi: 1665
- Iscritto il: mer 6 giu 2007, 14:44
- Nome Cognome: Andrea Peluso
- Slackware: 64-current
- Kernel: ultimo
- Desktop: KDE
- Località: (Salerno)
- Contatta:
Re: [bash] esportare variabile da uno script
beh, anche questa è una soluzione allora, se definisco le variabili in un terzo script, perchè se esegue tutto il primo script per me è un male. però quando dovrei avere un terzo script non so quanto convenga rispetto a far creare un file in /tmp...
grazie per entrambe le soluzioni
, vedrò quale mi piace di più
grazie per entrambe le soluzioni

