Grazie Chris && Billo, adesso do uno sguardo a quello che mi avete suggerito, intanto vi pongo un'altro quesito di bash-scripting: Sto scrivendo uno script per "smistare" su diversi files il contenuto del file auth.log, in base al giorno e al mese in cui sono stati generati. Per ora ho scritto questo pezzo di codice: ####################################################################### ########## # Software: access.sh v0.1 # # Date: Martedì 9 Marzo 2004 # # Author: Mad Damon # ####################################################################### ########## #!/bin/bash # Variabili: LOG_DIR=/var/log ACCESS_FILE=auth.log MONTH=`date +%b` DAY=`date +%d` RIGHE=`wc -l "$LOG_DIR"/"$ACCESS_FILE" | awk '{print $1}'` # Program: #Executing a For loop to elaborate the entire file: for ((a=1; a<= RIGHE; a++)) do { read LINE$a } < $LOG_DIR/$ACCESS_FILE echo -e "Riga letta LINE"$a" contiene: $LINE$a" [CUT] done ###################################################### Ho un grosso problema nello spiegare al comando echo che voglio sapere il contenuto della variabile $LINE'a' dove a varia come descritto dal ciclo di for, infatti ho provato a mettere le virgolette, il simbolo $ e a non metterlo ma i risultati che ho ottenuto sono stati: LINE oppure il valore contenuto in 'a'. Come posso fare? Ho pensato anche di riscrivere il ciclo FOR per fargli leggere solo la 1^ riga e poi per cancellarla spostando tutto il contenuto del log in un'altro file (eccetto la prima riga) con il comando 'tail', ma non mi sembrava molto elegante! -- Ciao Samu