PDA

Visualizza la versione completa : [Shell script] Problema variabili


Neon87
17-07-2006, 00:37
Ciao!

Ho un problema con uno script che ho scritto...

dopo aver richiesto un valore con read

read kver
echo "linux-image-$kver_$kver"

scrive su schermo

linux-image-$kver

invece di

linux-image-$kver_$kver

non capisco perche' si mangi _$ver

Avete idee?

Grazie!

bereshit
17-07-2006, 01:59
non so molto di bash..ma non ho visto che levando il trattino basso e mettendone uno altro il problema scompare..probabilmente avrà una funzione particolare il _

U-bahn
17-07-2006, 03:11
Originariamente inviato da bereshit
non so molto di bash..ma non ho visto che levando il trattino basso e mettendone uno altro il problema scompare..probabilmente avrà una funzione particolare il _

il trattino basso (underscore) è tra i caratteri ammessi nel nome di una variabile,
pertanto $kver_ viene riconosciuta come tale, e risulta differente da $kver

dando echo "$kver_$kver", infatti, non viene stampato <valore.kver>_<valor.kver>,
ma <valore.kver_><valore.kver> e, poichè la prima non è, evidentemente, dichiarata,
il suo valore risulta nullo

se proprio ti interessa l'underscore, prova con


echo "linux-image-${kver}_${kver}"
echo -e "linux-image-$kver\x5f$kver"
echo -e "linux-image-$kver\137$kver"

etc...

:ciauz:

<tab>

Neon87
17-07-2006, 09:23
Grazie mille!

ho messo ${kver}_${kver}

Funziona perfettamente!

Grazie ancora!

bereshit
17-07-2006, 11:48
evviva la conoscenza

:fighet: :fighet: :fighet: :fighet: :) :) :) :) :) :)

Loading