ciao ho un grosso problema con le regular expression
dati i file nella dir :
il comando ls | grep a.*codice:1.txt a a.* appppppppppj.txt arpiero.txt a.txt col.txt cool.txt coooooooool.txt il ppppp ddsa l.txt kola.txt p2 pall.txt .....
non mi restituisce nulla , mentre io gli sto dicendo a seguito da qualsiasi carattere ripetuto 0 o più volte
mentre
ls | grep "a.*" restituisce 9 risultati
codice:a a.* appppppppppj.txt arpiero.txt a.txt il ppppp ddsa l.txt kola.txt pall.txt
e ls | egrep "a.{3}" restituisce 6 risultati
codice:appppppppppj.txt arpiero.txt a.txt il ppppp ddsa l.txt kola.txt pall.txt
per quale motivo sono costretto a mettere il double quoting con le regular expression? quando è obbligatorio usarlo?
perchè io impongo a grep 3 occorrenze del carattere che precede e lui mi trova ad esempio arpiero.txt che di occorrenze di r n ha solo una ?
quando scrivo una regular expression i metacaratteri della shell perdono il loro significato no? es * nella shell significa qualsiasi stringa, mentre nella regular expression
qualsiasi occorrenza del carattere che precede
grazie


Rispondi quotando
)
) avevo fatto un po' di confusione a mia volta
) e di grep.
