[Pluto-help] Problemi con script bash
Mariani Darkpand Dario
darkpand a libero.it
Mar 28 Ago 2001 18:38:41 CEST
Ho questo scriptino bash:
#!/bin/sh
totale= `awk ' BEGIN { RS="\n---" }
{totale= NR}
END { print totale }' $1`;
awk --assign totale=$totale ' BEGIN { RS="\n---"
srand()
numero= rand() * (totale-1)+1 }
NR == numero { sub("^\n","",$0)
print $0 } ' $1;
Il problema lo ho sul primo comando.
Lo script all'interno del comando stampa un numero. Io vorrei che questo
numero fosse messo nella variabile $totale che passo al secondo script.
Ho pensato in questo modo: se inserisco un comando all'interno degli
apici inversi, questo comando viene eseguito ed il testo contenuto tra
gli apici viene sostituito dall'output.
Per cui se il programma stampa "58", in $totale dovrei trovarmi "58".
Invece, se eseguo questo script ho il messaggio di errore "bash: 58:
command not found", il che vuol dire che cerca di eseguire il comando
"58".
Ho provato, invece di mettere gli apici inversi, a metterli senza apice,
ma in questo caso mi viene eseguito lo script, per cui stampando "58"
sullo schermo, mentre alla variabile non viene assegnato nulla.
Se faccio l'assegnazione con $totale= ecc. ecc. mi viene dato errore.
Se metto tutto il comando tra apici singoli, nella variabile viene messo
tutto il comando.
Insomma, come faccio a mettere l'output di un comando in una variabile
(calcolando che non posso usare il pipe)?
Grazie in anticipo,
--
Mariani "Darkpand" Dario darkpand a libero.it
IAFo #126 ICQ# 49365960
"L'uomo e' tanto meno se' stesso quanto piu' parla in persona propria:
dategli una maschera e vi dira' la verita'"
Oscar Wilde
"Dio esiste, si tratta solo di trovarlo e riempirlo di botte"
Tiziano Sclavi
More information about the pluto-help
mailing list