Live Support My forum, my way! Il forum dei newsgroup: Linux » sintassi di grep
My forum, my way! Il forum dei newsgroup
Fast Uncompromising Discussions.Newsgroup FUDforum will get your users talking.

Loading
Utenti      F.A.Q.    Registrati    Login    Home
Home » Computer » Linux » sintassi di grep
sintassi di grep [messaggio #34947] ven, 14 gennaio 2011 20:53 Messaggio successivo
daniele  è attualmente disconnesso daniele
Messaggi: 600
Registrato: novembre 2010
Senior Member
Perché se scrivo

grep -r initFilter *

ottengo vari risultati, tra cui questo

libswscale/swscale.c:static inline int initFilter(int16_t **outFilter, int16_t **filterPos, int *outFilterSize, int xInc,

mentre se scrivo

grep -r initFilter *.c

non ottengo niente?
--
Dona i tuoi cicli di clock alla ricerca!
http://boinc.berkeley.edu/
--------------------
"Preferisco essere infelice con te che infelice con altri."
Re: sintassi di grep [messaggio #34948 è una risposta a message #34947] ven, 14 gennaio 2011 21:06 Messaggio precedenteMessaggio successivo
Roberto  è attualmente disconnesso Roberto
Messaggi: 892
Registrato: maggio 2009
Senior Member
daniele.g ha scritto:
> Perché se scrivo
>
> grep -r initFilter *
>
> ottengo vari risultati, tra cui questo
>
> libswscale/swscale.c:static inline int initFilter(int16_t **outFilter, int16_t **filterPos, int *outFilterSize, int xInc,
>
> mentre se scrivo
>
> grep -r initFilter *.c
>
> non ottengo niente?

Perchè non hai nessuna directory che si chiami qualcosa.c


--
|Save our planet!
Ciao |Save wildlife!
roberto |For your E-MAIL use ONLY recycled Bytes !!
|roberto poggi rpoggi@softhome.net
Re: sintassi di grep [messaggio #34949 è una risposta a message #34947] ven, 14 gennaio 2011 23:13 Messaggio precedenteMessaggio successivo
RedWiz  è attualmente disconnesso RedWiz
Messaggi: 147
Registrato: novembre 2010
Senior Member
Il Fri, 14 Jan 2011 20:53:27 +0100, daniele.g ha scritto:

> Perché se scrivo
>
> grep -r initFilter *
>
> ottengo vari risultati, tra cui questo
>
> libswscale/swscale.c:static inline int initFilter(int16_t **outFilter,
> int16_t **filterPos, int *outFilterSize, int xInc,
>
> mentre se scrivo
>
> grep -r initFilter *.c
>
> non ottengo niente?

Perchè grep funziona così e perchè tu non hai letto il man.

cfr: -d recurse


quello che vorresti fare te si fa con find + xargs + grep
Re: sintassi di grep [messaggio #34950 è una risposta a message #34948] sab, 15 gennaio 2011 00:19 Messaggio precedenteMessaggio successivo
daniele  è attualmente disconnesso daniele
Messaggi: 600
Registrato: novembre 2010
Senior Member
roberto <rpoggiNOSPAM@softhome.net.invalid> writes:

> Daniele.g ha scritto:
>> Perché se scrivo
>>
>> grep -r initFilter *
>>
>> ottengo vari risultati, tra cui questo
>>
>> libswscale/swscale.c:static inline int initFilter(int16_t **outFilter, int16_t **filterPos, int *outFilterSize, int xInc,
>>
>> mentre se scrivo
>>
>> grep -r initFilter *.c
>>
>> non ottengo niente?
>
> Perchè non hai nessuna directory che si chiami qualcosa.c

Ok, ma se volessi esaminare ricorsivamente solo i sorgenti .c e .h qual
è la sintassi corretta.
--
Dona i tuoi cicli di clock alla ricerca!
http://boinc.berkeley.edu/
--------------------
Ordine dei Cappuccini: 5 tazze di caffelatte una dietro l'altra.
-- Da it.hobby.umorismo
Re: sintassi di grep [messaggio #34952 è una risposta a message #34950] sab, 15 gennaio 2011 07:30 Messaggio precedenteMessaggio successivo
Davide Bianchi  è attualmente disconnesso Davide Bianchi
Messaggi: 95
Registrato: novembre 2010
Member
On 2011-01-14, daniele.g <daniele@mother.nostromo.wy> wrote:
> Ok, ma se volessi esaminare ricorsivamente solo i sorgenti .c e .h qual
> è la sintassi corretta.

find ... -name '*.c|' -exec grep ...
find ... -name '*.h|' -exec grep ...

Davide

--
The old "give 'em a Linux box and they think they're Jean-Luc Picard" syndrome.
--Pete Bentley
Re: sintassi di grep [messaggio #34953 è una risposta a message #34950] sab, 15 gennaio 2011 07:50 Messaggio precedenteMessaggio successivo
Antonio 6sette  è attualmente disconnesso Antonio 6sette
Messaggi: 20
Registrato: gennaio 2011
Junior Member
On 2011-01-14, daniele.g <daniele@mother.nostromo.wy> wrote:
>>> grep -r initFilter *
>>>
>>> ottengo vari risultati, tra cui questo
>>>
>>> libswscale/swscale.c:static inline int initFilter(int16_t **outFilter, int16_t **filterPos, int *outFilterSize, int xInc,
>>>
>>> mentre se scrivo
>>>
>>> grep -r initFilter *.c
>>>
>>> non ottengo niente?
>>
>> Perch?? non hai nessuna directory che si chiami qualcosa.c
>
> Ok, ma se volessi esaminare ricorsivamente solo i sorgenti .c e .h qual
> ?? la sintassi corretta.

qualcosa tipo

$ find directory/ -type f -regextype posix-extended -regex '.*\.(c|h)' -exec grep initFilter {} \;

--
Never try to teach a pig to sing.
It wastes your time and annoys the pig.
Re: sintassi di grep [messaggio #34956 è una risposta a message #34953] sab, 15 gennaio 2011 11:58 Messaggio precedenteMessaggio successivo
Giacomo Boffi  è attualmente disconnesso Giacomo Boffi
Messaggi: 38
Registrato: novembre 2010
Member
Antonio 6sette <bottesini@libero.it> writes:

> $ find directory/ -type f -regextype posix-extended -regex '.*\.(c|h)' \
> -exec grep initFilter {} \;

se vuoi sapere quali file hanno matchato usando grep -exec serve dare
a grep l'opzione -H

grep -H initFilter

oppure, come qualcun altro ha scritto, usare xargs che ultrapiù non
inizializza quelle centinaia di processi

se i file hanno nomi buffi (con spazi etc) -exec ci pensa da se,
invece la pipe find | xargs necessita delle opzioni -print0 e -0 per
find e xargs rispettivamente
--
BLOWN UP BY THOUSANDS OF CORVETTES. SINKING. U-718.
Re: sintassi di grep [messaggio #34958 è una risposta a message #34950] sab, 15 gennaio 2011 12:14 Messaggio precedenteMessaggio successivo
Dalet  è attualmente disconnesso Dalet
Messaggi: 210
Registrato: novembre 2010
Senior Member
Il 14-01-2011, daniele.g dice:

>Ok, ma se volessi esaminare ricorsivamente solo i sorgenti .c e .h qual
>è la sintassi corretta.

Prova anche questa con solo grep:

grep -r initFilter * | grep ".[c|h]:"

a meno che non perda troppo tempo a greppare tutti file
prima di filtrarteli.

--
Saluti, Dalet
Re: sintassi di grep [messaggio #34959 è una risposta a message #34958] sab, 15 gennaio 2011 12:28 Messaggio precedenteMessaggio successivo
mallin.shetland  è attualmente disconnesso mallin.shetland
Messaggi: 129
Registrato: novembre 2010
Senior Member
Addì sabato 15 gennaio 2011 12:14 Dalet scrisse:

> Prova anche questa con solo grep:
>
> grep -r initFilter * | grep ".[c|h]:"

Non molto intelligente...



Addì sabato 15 gennaio 2011 12:14 Dalet scrisse:
> ...
> a meno che non perda troppo tempo a greppare tutti file
> prima di filtrarteli.

Anche se impiega pochissimo tempo non è molto intelligente
Re: sintassi di grep [messaggio #34960 è una risposta a message #34953] sab, 15 gennaio 2011 12:34 Messaggio precedenteMessaggio successivo
mallin.shetland  è attualmente disconnesso mallin.shetland
Messaggi: 129
Registrato: novembre 2010
Senior Member
Addì sabato 15 gennaio 2011 07:50 Antonio 6sette scrisse:

> $ find directory/ -type f -regextype posix-extended -regex '.*\.(c|h)'
> -exec grep initFilter {} \;


Molto più semplice

find . -name '*.c' -o -name '*.h' -exec grep -H initfilter {} +

L'opzione -H si può omettere ma per sicurezza è meglio lasciarla.
Re: sintassi di grep [messaggio #34961 è una risposta a message #34959] sab, 15 gennaio 2011 13:29 Messaggio precedenteMessaggio successivo
Dalet  è attualmente disconnesso Dalet
Messaggi: 210
Registrato: novembre 2010
Senior Member
Il 15-01-2011, mallin.shetland dice:
>Addì sabato 15 gennaio 2011 12:14 Dalet scrisse:

>>Prova anche questa con solo grep:
>>grep -r initFilter * | grep ".[c|h]:"

>Non molto intelligente...

>>a meno che non perda troppo tempo a greppare tutti file
>>prima di filtrarteli.

>Anche se impiega pochissimo tempo non è molto intelligente

Perche'? il lavoro inutile lo fa lui, qual e' la
controindicazione? o dici per il pattern?

--
Saluti, Dalet
Re: sintassi di grep [messaggio #34962 è una risposta a message #34961] sab, 15 gennaio 2011 14:04 Messaggio precedenteMessaggio successivo
RedWiz  è attualmente disconnesso RedWiz
Messaggi: 147
Registrato: novembre 2010
Senior Member
Il Sat, 15 Jan 2011 12:29:12 +0000, Dalet ha scritto:

> Il 15-01-2011, mallin.shetland dice:
>>Addì sabato 15 gennaio 2011 12:14 Dalet scrisse:
>
>>>Prova anche questa con solo grep:
>>>grep -r initFilter * | grep ".[c|h]:"
>
>>Non molto intelligente...
>
>>>a meno che non perda troppo tempo a greppare tutti file prima di
>>>filtrarteli.
>
>>Anche se impiega pochissimo tempo non è molto intelligente
>
> Perche'? il lavoro inutile lo fa lui, qual e' la controindicazione? o
> dici per il pattern?

A parte che se nel percorso c'è una iso dvd, grep inizia a ravanare per
mezzora il disco, e non è bello.
Poi, l'istruzione che hai dato non fa quello che ha chiesto l'op, visto
che ti matcha la riga

blablabla initFilter blablalba.ciccio

nel file

pippo.unaestensionequalsiasi
Re: sintassi di grep [messaggio #34966 è una risposta a message #34961] sab, 15 gennaio 2011 14:26 Messaggio precedenteMessaggio successivo
mallin.shetland  è attualmente disconnesso mallin.shetland
Messaggi: 129
Registrato: novembre 2010
Senior Member
Addì sabato 15 gennaio 2011 13:29 Dalet scrisse:

> Il 15-01-2011, mallin.shetland dice:
>>Addì sabato 15 gennaio 2011 12:14 Dalet scrisse:
>
>>>Prova anche questa con solo grep:
>>>grep -r initFilter * | grep ".[c|h]:"
>
>>Non molto intelligente...
>
>>>a meno che non perda troppo tempo a greppare tutti file
>>>prima di filtrarteli.
>
>>Anche se impiega pochissimo tempo non è molto intelligente
>
> Perche'? il lavoro inutile lo fa lui, qual e' la
> controindicazione? o dici per il pattern?


Prima di tutto non capisco il pattern. il punto è il carattere jolly, deve
essere preceduto dallo escape e poi devi mettere l'ancora, e devi
mettere l'operatore di chiusura ed i due punti, anche se messi da grep, causano dei bug sottili. Ma queste sono piccolezze.

Secondo la leggerezza con cui parli. "Tanto il lavoro sporco lo fa iul, il processore!" No. Come /forma/ /mentis/; fare le cose nel modo corretto
fa evitare molti problemi di debugging. Questo è un caso banale, ci sono
molte scappatoie ma se ti abitui a usare le scappatoie poi ti sarà
impossibile affrontare il caso difficile.
Re: sintassi di grep [messaggio #34969 è una risposta a message #34966] sab, 15 gennaio 2011 15:23 Messaggio precedenteMessaggio successivo
Dalet  è attualmente disconnesso Dalet
Messaggi: 210
Registrato: novembre 2010
Senior Member
Il 15-01-2011, mallin.shetland dice:
>Addì sabato 15 gennaio 2011 13:29 Dalet scrisse:

>>Perche'? il lavoro inutile lo fa lui, qual e' la
>>controindicazione? o dici per il pattern?

>Prima di tutto non capisco il pattern. il punto è il carattere jolly,
[.........]
>Secondo la leggerezza con cui parli. "Tanto il lavoro sporco lo fa lui,
>il processore!" No. Come /forma/ /mentis/; fare le cose nel modo
>corretto fa evitare molti problemi di debugging.

OK THX d'accordissimo su tutta la critica giusta.. un po'
l'ho scritto in leggerezza anche perche' l'output serviva
solo per avere un elenco, non poteva far danni, al piu'
ci sarebbe stato d'arrangiare il pattern o di rinunciare
incontrando file giganti.

>Questo è un caso
>banale, ci sono molte scappatoie ma se ti abitui a usare le scappatoie
>poi ti sarà impossibile affrontare il caso difficile.

Si', verissimo! ariTHX.

--
Saluti, Dalet
Re: sintassi di grep [messaggio #34970 è una risposta a message #34962] sab, 15 gennaio 2011 16:35 Messaggio precedente
Dalet  è attualmente disconnesso Dalet
Messaggi: 210
Registrato: novembre 2010
Senior Member
Il 15-01-2011, RedWiz dice:
>Il Sat, 15 Jan 2011 12:29:12 +0000, Dalet ha scritto:

>>Perche'? il lavoro inutile lo fa lui, qual e' la controindicazione? o
>>dici per il pattern?

>A parte che se nel percorso c'è una iso dvd, grep inizia a ravanare per
>mezzora il disco, e non è bello.

Si', ma l'ho detto: se non ci mette molto.

>Poi, l'istruzione che hai dato non fa quello che ha chiesto l'op, visto
>che ti matcha la riga
>blablabla initFilter blablalba.ciccio
>nel file
>pippo.unaestensionequalsiasi

Be', salvo complicazioni perche' non ho protetto, questo
che dici non lo matcha perche' mancano i due punti dopo c.
(da me per proteggere il punto son bastate le virgolette)

Cmq era un porcaio come ho riconosciuto anche con Mallin,
pero' era solo per un elenco, voglio dire: anche con errori
non avrebbe fatto danni, al piu' sarebbe stato d'aggiustare.

--
Saluti, Dalet
Argomento precedente:digitale terrestre con ubuntu 10.10
Argomento successivo:Hot s Beautiful Women in The World Live Chat Sex Web Cams &lt;&lt;&lt;&lt;&lt;
Vai al forum:
  


Ora corrente: dom apr 28 01:02:52 CEST 2024

Tempo totale richiesto per generare la pagina: 0.03879 secondi
.:: Contatti :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Live Support