View Full Version : programmazione sh
texerasmo
03-04-2006, 14:42
Se ho un file scritto in questo modo
ciao erasmo
ciao 55
ciao mino
....
ciao fine
Posso fare un script mi legge riga per riga? E controllarle?
Ovvero se c'è in una riga un determinato testo gli faccio fare qualcosa altrimenti no.
cat nomefile |while read line
do
if [[ `expr match $line regexp` > 0 ]]
then #fai quel che vuoi
fi
done
texerasmo
03-04-2006, 16:11
funziona ma ho un pb
se ho in una stringa gli spazi come li difende con la
regexp
la stringa da analizzare è output di who
who | awk '/regex-qui/ {print;}'
Uno spazio è identificato da \s. Spero di aver capito il tuo problema; magari fai un esempio di ciò che ti serve realmente.
magari fai un esempio di ciò che ti serve realmente.
quoto, non ho capito bene qual è il problema.
se devi verificare se un utente è loggato ti basta fare una grep sull'output di who, non occorre quel ciclo.
lo spazio non è un problema, usa le virgolette per la regexp
texerasmo
03-04-2006, 17:09
Con il comando who ho un output del genere
root pts/40 Apr 3 17:47 (192.168.0.116)
root pts/40 Apr 3 17:47 (192.168.0.106)
root pts/40 Apr 3 17:47 (192.168.0.105)
ho un script che mi scrive output di questo comando
Quando vado ad analizzare il file vorrei scartare dal file tuttle le righe che segnano questo ip 192.168.0.116.
Si potrei fare anche una cosa del genere
who | awk '/regex-qui/ {print;}'
ma non riesco a scrive una regex che faccia quello che dico io
ti basta una grep:
grep -v 192.168.0.116 nomefile
texerasmo
04-04-2006, 14:09
ok grazie sempre gentilissimo
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.