Re: Ricerca selettiva con grep: risultato che 'sembra' anomalo
On 23/01/2016 19:45, Ennio-Sr wrote: user@deb:~$ ls user/Titoli/vendite/ | grep Apple 24 20131212_Merck-vend_1.pdf 24 20141203_Apple-vend.pdf ??? user@deb:~$ ls user/Titoli/vendite/* | grep Apple 24 user//Titoli//vendite/20141203_Apple-vend.pdf banale :-) prova ad eseguire questi comandi: $ ls user/Titoli/vendite/ $ ls user/Titoli/vendite/* :-) il primo ti elenca delle righe e su ogni riga ci può essere più di un file; il secondo invece ha solo un file per ogni riga. Quindi con il primo ti tira fuori le righe che hanno almeno un file con la stringa cercata e quindi ti ritrovi anche file che non contengono la riga cercata, ma che sono sulla stessa riga tornata da ls C`è una spiegazione? (in man grep non l`ho trovata...) dovevi guardare il man di ls :-) Ciao Davide -- Dizionari: http://linguistico.sourceforge.net/wiki Motivi per non comprare/usare ms-windows7: http://windows7sins.org/ Non autorizzo la memorizzazione del mio indirizzo su outlook
Re: Ricerca selettiva con grep: risultato che 'sembra' anomalo
* Davide Prina [230116, 20:06]: > On 23/01/2016 19:45, Ennio-Sr wrote: > > >user@deb:~$ ls user/Titoli/vendite/ | grep Apple > >24 20131212_Merck-vend_1.pdf 24 20141203_Apple-vend.pdf > > ??? > > >user@deb:~$ ls user/Titoli/vendite/* | grep Apple > >24 user//Titoli//vendite/20141203_Apple-vend.pdf > > banale :-) > > prova ad eseguire questi comandi: > $ ls user/Titoli/vendite/ > $ ls user/Titoli/vendite/* > > :-) > Mmh, sarà anche banale, ma dopo aver eseguito i comandi di cui sopra ... > il primo ti elenca delle righe e su ogni riga ci può essere più di un file; > il secondo invece ha solo un file per ogni riga. Quindi con il primo ti tira > fuori le righe che hanno almeno un file con la stringa cercata e quindi ti > ritrovi anche file che non contengono la riga cercata, ma che sono sulla > stessa riga tornata da ls > vedo che 'Merck' e 'Apple' sono su righe/colonne diverse con $ ls user/Titoli/vendite/--> output su 4/5 colonna mentre, guarda caso, sono sulla stessa riga con $ ls user/Titoli/vendite/* --> output su 2 colonne > >C`è una spiegazione? (in man grep non l`ho trovata...) > > dovevi guardare il man di ls :-) > Ho guardato ora, molto rapidamente per la verità, e non ho trovato... Grazie, comunque, della rapida risposta. PS. Per caso hai opzioni particolari al tuo alias di 'ls' ? il mio è: alias ls='ls -s -F -T 0 -b -H -1 -C --color=auto' e mi riprometto di rivedere una ad una quelle opzioni, a mente fresca ;) -- [Perche' usare Win$ozz (dico io) se ..."anche uno sciocco sa farlo. \\?// Fa' qualche cosa di cui non sei capace!" (diceva Henry Miller) ](°|°) [Why use Win$ozz (I say) if ... "even a fool can do that. )=( Do something you aren't good at!" (as Henry Miller used to say) ]
Re: Ricerca selettiva con grep: risultato che 'sembra' anomalo
Ciao, Il Dom, 24 Gennaio 2016 2:07 am, Ennio-Sr ha scritto: > * Davide Prina [230116, 20:06]: >> On 23/01/2016 19:45, Ennio-Sr wrote: >> >> >user@deb:~$ ls user/Titoli/vendite/ | grep Apple >> >24 20131212_Merck-vend_1.pdf 24 20141203_Apple-vend.pdf >> > ??? >> >> >user@deb:~$ ls user/Titoli/vendite/* | grep Apple >> >24 user//Titoli//vendite/20141203_Apple-vend.pdf >> >> banale :-) > Mmh, sarà anche banale, ma dopo aver eseguito i comandi di cui sopra ... > vedo che 'Merck' e 'Apple' sono su righe/colonne diverse con > $ ls user/Titoli/vendite/--> output su 4/5 colonna > mentre, guarda caso, sono sulla stessa riga con > $ ls user/Titoli/vendite/* --> output su 2 colonne Dipende dalla larghezza della finestra, dalla dimensione dei caratteri, dalla lunghezza dei nomi file... In effetti mi aspetterei che ls si accorgesse che intendo dare il suo output in pasto ad un altro programma tramite pipe e scrivesse un file per riga... ma basare uno script su questa assunzione non mi sembra comunque una buona idea. Forse usando ls -1 ... >> >C`è una spiegazione? (in man grep non l`ho trovata...) >> dovevi guardare il man di ls :-) Io invece consiglierei di guardare il manuale di find :-) $find user/Titoli/vendite/ -maxdepth 0 -name \*Apple\* Probabilmente fa quello che ti serve, ed anche in modo più efficiente. Buona domenica, m -- http://bodrato.it/papers/
Re: Ricerca selettiva con grep: risultato che 'sembra' anomalo
Il Sun, 24 Jan 2016 01:07:09 +, Ennio-Sr ha scritto: > vedo che 'Merck' e 'Apple' sono su righe/colonne diverse con $ ls > user/Titoli/vendite/--> output su 4/5 colonna mentre, guarda > caso, sono sulla stessa riga con $ ls user/Titoli/vendite/* --> > output su 2 colonne grep lavora per righe. Se sono su colonne diverse ma sulla stessa riga, ti torna la riga. Togli l'alias a ls e chiamalo in un altro modo, lasciando ls di default, che si accorge di quando viene messo in pipe e torna i risultati per riga invece che incolonnati. Bye.
Re: Ricerca selettiva con grep: risultato che 'sembra' anomalo
On 24/01/2016 02:07, Ennio-Sr wrote: * Davide Prina ha scritto: On 23/01/2016 19:45, Ennio-Sr wrote: user@deb:~$ ls user/Titoli/vendite/ | grep Apple 24 20131212_Merck-vend_1.pdf 24 20141203_Apple-vend.pdf ??? user@deb:~$ ls user/Titoli/vendite/* | grep Apple 24 user//Titoli//vendite/20141203_Apple-vend.pdf vedo che 'Merck' e 'Apple' sono su righe/colonne diverse con $ ls user/Titoli/vendite/--> output su 4/5 colonna mentre, guarda caso, sono sulla stessa riga con $ ls user/Titoli/vendite/* --> output su 2 colonne alias ls='ls -s -F -T 0 -b -H -1 -C --color=auto' fai così: $ ls -s -F -T 0 -b -H -1 -C --color=auto user/Titoli/vendite/ \ | grep -v non_presente tu dovresti avere lo stesso risultato con $ ls user/Titoli/vendite/ | grep -v non_presente in questo modo vedi le righe che arrivano in pasto a grep e che poi applica per estrarti la riga "incriminata" Ciao Davide -- Dizionari: http://linguistico.sourceforge.net/wiki Browser: http://www.mozilla.org/products/firefox GNU/Linux User: 302090: http://counter.li.org Non autorizzo la memorizzazione del mio indirizzo su outlook
Re: Ricerca selettiva con grep: risultato che 'sembra' anomalo
con "ls -l" sei sicuro di avere un solo nome-file per ogni riga 2016-01-24 9:20 GMT+01:00 Davide Prina : > On 24/01/2016 02:07, Ennio-Sr wrote: > >> * Davide Prina ha scritto: >> >>> On 23/01/2016 19:45, Ennio-Sr wrote: >>> >>> user@deb:~$ ls user/Titoli/vendite/ | grep Apple 24 20131212_Merck-vend_1.pdf 24 20141203_Apple-vend.pdf ??? >>> >>> user@deb:~$ ls user/Titoli/vendite/* | grep Apple 24 user//Titoli//vendite/20141203_Apple-vend.pdf >>> > vedo che 'Merck' e 'Apple' sono su righe/colonne diverse con >> $ ls user/Titoli/vendite/--> output su 4/5 colonna >> mentre, guarda caso, sono sulla stessa riga con >> $ ls user/Titoli/vendite/* --> output su 2 colonne >> > > alias ls='ls -s -F -T 0 -b -H -1 -C --color=auto' >> > > fai così: > > $ ls -s -F -T 0 -b -H -1 -C --color=auto user/Titoli/vendite/ \ > | grep -v non_presente > > tu dovresti avere lo stesso risultato con > > $ ls user/Titoli/vendite/ | grep -v non_presente > > in questo modo vedi le righe che arrivano in pasto a grep e che poi > applica per estrarti la riga "incriminata" > > Ciao > Davide > > -- > Dizionari: http://linguistico.sourceforge.net/wiki > Browser: http://www.mozilla.org/products/firefox > GNU/Linux User: 302090: http://counter.li.org > > Non autorizzo la memorizzazione del mio indirizzo su outlook > > -- Efisio Sciola IT Consultant tel +39 335 6303650
Re: Ricerca selettiva con grep: risultato che 'sembra' anomalo
Il 24 gennaio 2016 11:15, Efisio Sciola ha scritto: > con "ls -l" sei sicuro di avere un solo nome-file per ogni riga > > 2016-01-24 9:20 GMT+01:00 Davide Prina : >> >> On 24/01/2016 02:07, Ennio-Sr wrote: >>> Il quote... questo sconosciuto... top-quoting è male -- Gollum1 - http://www.gollumone.it Tesoro, dov'é il mio teoro...
OT era Re: Ricerca selettiva con grep: risultato che 'sembra' anomalo
Sat 23 January 2016, alle 20:06 +0100, Davide Prina ha scritto: > On 23/01/2016 19:45, Ennio-Sr wrote: > > >user@deb:~$ ls user/Titoli/vendite/ | grep Apple > >24 20131212_Merck-vend_1.pdf 24 20141203_Apple-vend.pdf > > ??? > > >user@deb:~$ ls user/Titoli/vendite/* | grep Apple > >24 user//Titoli//vendite/20141203_Apple-vend.pdf > > banale :-) > > prova ad eseguire questi comandi: > $ ls user/Titoli/vendite/ > $ ls user/Titoli/vendite/* > > :-) > > il primo ti elenca delle righe e su ogni riga ci può essere più di un file; > il secondo invece ha solo un file per ogni riga. Quindi con il primo ti tira > fuori le righe che hanno almeno un file con la stringa cercata e quindi ti > ritrovi anche file che non contengono la riga cercata, ma che sono sulla > stessa riga tornata da ls > Leggo sempre con piacere i tuoi interventi, che molto spesso sono i piu' tempestivi, i piu' chiari ed i piu' esaurienti. Fosse per me, meriteresti una onorificenza tipo Membro piu' attivo della comunita' Debian-Italia 2015. Ci tenevo a farlo sapere. -- Francesco Alaimo - GnuPG ID Key: A07FF2DB Fingerprint 3D2F DCD4 6AB3 9C52 995A 969E D634 02FF A07F F2DB