[RISOLTO] errore script

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
cd.rw
Prode Principiante
Messaggi: 5
Iscrizione: mercoledì 27 dicembre 2006, 15:33

[RISOLTO] errore script

Messaggio da cd.rw »

Buona sera a tutti.
mi succede questo, che se lancio le due righe da consolle funziona correttamente
comandi da consolle il comando funziona perfettamente
a=asdfghjkio
echo ${a:3}

mentre se creo un file con i seguenti comandi e lo lancio da consolle con il comando sh test, oppure ./test mi da l'errore seguente:
test: 3: Syntax error: Bad substitution
file test
#!/bin/sh
a=asdfrtyui
echo ${a:3}

qualcuno mi sa dire dove sta l'errore? ho provato a copiare e incollare da manuali che danno questa sintassi ma l'errore si ripete.
grazie anticipatamente
ciao a tutti

uso ubuntu
Ultima modifica di twilight il domenica 6 maggio 2007, 11:43, modificato 1 volta in totale.
Avatar utente
Mr. Dreadsoft
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1510
Iscrizione: martedì 2 gennaio 2007, 11:08
Contatti:

Re: errore script

Messaggio da Mr. Dreadsoft »

usa una variabile diversa da quella che hai usato nella modalità a riga di comando, che so, B... non sono esperto di script di shell, ma credo che quando la scrivi da riga di comando, a rimane registrata.

Quando la chiami dallo script nella stessa versione di shell, forse ti impedisce la sovrascrittura... ma è tutta una supposizione.

Se ti può tornare utile, ti propongo anche questa soluzione alternativa

Codice: Seleziona tutto

echo $a | cut -c3-
per maggiori informazioni man cut.
Progetto del momento: Trabolsciuter (ricerca i problemi già risolti nel forum di ubuntu)
Avatar utente
difesaparcosempione
Rampante Reduce
Rampante Reduce
Messaggi: 6031
Iscrizione: giovedì 27 luglio 2006, 19:06
Località: Torino
Contatti:

Re: errore script

Messaggio da difesaparcosempione »

stranissimo,
da me funziona da linea di comando che interno ad uno script.
ottengo sempre frtyui

ciao
:)
Avatar utente
twilight
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 3849
Iscrizione: giovedì 17 febbraio 2005, 16:29
Località: L'Aquila
Contatti:

Re: errore script

Messaggio da twilight »

invece di #!/bin/sh all'inizio del file metti #!/bin/bash. sh punta a dash.
ciao
cd.rw
Prode Principiante
Messaggi: 5
Iscrizione: mercoledì 27 dicembre 2006, 15:33

Re: errore script

Messaggio da cd.rw »

...esatto .
inserendo #!/bin/bash invece di #!/bin/sh funziona.
...grazie dell'aiuto.
Ciao
Avatar utente
twilight
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 3849
Iscrizione: giovedì 17 febbraio 2005, 16:29
Località: L'Aquila
Contatti:

Re: errore script

Messaggio da twilight »

bene, per le prossime volte quando risolvi, ricorda di modificare il primo post del topic e aggiungere al titolo "[RISOLTO]", ora lo faccio io :)
ciao
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 6 ospiti