Uso di grep sui processi [era: adsl]
Marco De Benedetto
debe@galliera.it
Gio 28 Set 2006 18:56:33 CEST
On gio 28 set, Valerio Fuoglio (thewally) wrote:
> Alle 18:03, giovedì 28 settembre 2006, Marco De Benedetto ha scritto:
> > La soluzione 'grep -v' presenta due problemi: l'ulteriore esecuzione
> > di grep e soprattutto non fa quello che intendi.
>
> Allora il mio computer deve avere qualche problema, perchè l'output dei
> due comandi è esattamente *identico*
>
> wally@cronus ~ $ ps aux|grep cron|grep -v grep
> root 8840 0.0 0.0 1968 648 ? Ss 12:11 0:00 /usr/sbin/cron
> root 9890 0.0 0.0 1504 224 ? S<s 12:13 0:00 /sbin/dhcpcd -h
> cronus -m 2000 eth2
>
> wally@cronus ~ $ ps aux|grep [c]ron
> root 8840 0.0 0.0 1968 648 ? Ss 12:11 0:00 /usr/sbin/cron
> root 9890 0.0 0.0 1504 224 ? S<s 12:13 0:00 /sbin/dhcpcd -h cronus -m
> 2000 eth2
>
> Se in certi casi funziona ed in altri no, spiega il perchè...
> Credo sia più istruttivo per tutti. ;)
Mi sembrava che l'esempio potesse essere la spiegazione ma va bene,
vediamo passo passo il perché.
"Non fa quello che intendi" significa:
1) tu intendi eliminare la riga dell'output di 'ps axu' relativa al tuo
processo 'grep';
2) in realtà stai eliminando tutte le righe che, pur conenendo quello
che cerchi, contengono *anche* la stringa 'grep'.
Quindi se per caso tra i processi che cerchi ce ne è uno che contiene la
stringa 'grep' (come nel mio esempio) tu non lo vedi; e nel tuo esempio
qui sopra non vedresti i processi /cron/ dell'ipotetico utente greport.
--
ciao,
debe
Maggiori informazioni sulla lista
glug