[risolto]Comando locate per singola cartella

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Avatar utente
kan3malato
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 278
Iscrizione: mercoledì 23 marzo 2011, 0:20
Desktop: Unity what else?
Distribuzione: UbuntuPrecisePangolin12.04i686

[risolto]Comando locate per singola cartella

Messaggio da kan3malato »

Salve,
Sapete se con il comando"Locate" c'è un opzione con la quale si possa cercare solo una cartella, evitando tutti gli altri files con il solito nome?

Per esempio, mi interessa trovare la cartella "pippo"
non mi interessa trovare pippo.jpg, pippo.avi, pippo.text, pippo.mp3 ecc ecc.

Grazie
Ultima modifica di kan3malato il mercoledì 9 maggio 2012, 16:42, modificato 1 volta in totale.
Linux Registred User # 534704
myHardware  myHardware-shortList
Avatar utente
Laycastle
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1183
Iscrizione: sabato 9 aprile 2011, 21:54
Desktop: KDE 4.8
Distribuzione: Gentoo ~amd64
Località: Torino

Re: Comando locate per singola cartella

Messaggio da Laycastle »

Guardando nel man non mi sembra di vedere opzioni simili. Puoi usare find

Codice: Seleziona tutto

find cartella -type d -name "pippo"
O, volendo, potresti usare una regexp

Codice: Seleziona tutto

locate -r '^/percorso/cartella/.*pippo$'
edit: non avevo visto che dovesse essere una cartella. :p
Ultima modifica di Laycastle il mercoledì 9 maggio 2012, 13:30, modificato 2 volte in totale.
la via più breve tra due punti è l'arabesco.
Avatar utente
difesaparcosempione
Rampante Reduce
Rampante Reduce
Messaggi: 6031
Iscrizione: giovedì 27 luglio 2006, 19:06
Località: Torino
Contatti:

Re: Comando locate per singola cartella

Messaggio da difesaparcosempione »

find -type d -a -name pippo

ciao
Avatar utente
kan3malato
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 278
Iscrizione: mercoledì 23 marzo 2011, 0:20
Desktop: Unity what else?
Distribuzione: UbuntuPrecisePangolin12.04i686

Re: Comando locate per singola cartella

Messaggio da kan3malato »

difesaparcosempione ha scritto:find -type d -a -name pippo

ciao
Grazie, questo sembra fungere ( i due comandi del post precedente no).
Sapevo che locate era migliore di find,o no :S ?
Linux Registred User # 534704
myHardware  myHardware-shortList
Avatar utente
difesaparcosempione
Rampante Reduce
Rampante Reduce
Messaggi: 6031
Iscrizione: giovedì 27 luglio 2006, 19:06
Località: Torino
Contatti:

Re: Comando locate per singola cartella

Messaggio da difesaparcosempione »

In certe situzioni forse è + veloce ... ma per come serviva a te è per me è + fruibile il comando find.
Se risolto il problema , modifica il titolo della 1ma discussione aggiungendo "Risolto"

ciaUx
;D
Avatar utente
Laycastle
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1183
Iscrizione: sabato 9 aprile 2011, 21:54
Desktop: KDE 4.8
Distribuzione: Gentoo ~amd64
Località: Torino

Re: Comando locate per singola cartella

Messaggio da Laycastle »

kan3malato ha scritto:i due comandi del post precedente no
Ma hai costituito "cartella" e "/percorso/cartella/" con la cartella in cui volevi cercare?
A me funzionano senza problemi entrambi.
Ultima modifica di Laycastle il mercoledì 9 maggio 2012, 16:42, modificato 1 volta in totale.
la via più breve tra due punti è l'arabesco.
Avatar utente
kan3malato
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 278
Iscrizione: mercoledì 23 marzo 2011, 0:20
Desktop: Unity what else?
Distribuzione: UbuntuPrecisePangolin12.04i686

Re: Comando locate per singola cartella

Messaggio da kan3malato »

ok tenchiù :proud:


Ultima cosa, il "d" sta per directory? se fosse stato un file esempio .avi, .jpg dovrei sostituire la d con avi o jpg?
Linux Registred User # 534704
myHardware  myHardware-shortList
Avatar utente
kan3malato
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 278
Iscrizione: mercoledì 23 marzo 2011, 0:20
Desktop: Unity what else?
Distribuzione: UbuntuPrecisePangolin12.04i686

Re: Comando locate per singola cartella

Messaggio da kan3malato »

Laycastle ha scritto:
kan3malato ha scritto:i due comandi del post precedente no
Ma hai costituito "cartella" e "/percorso/cartella/" con la cartella in cui volevi cercare?
A me funzionano senza problemi entrambi.
Si ma non fungono :S il secondo poi per il "mio" utilizzo ha poco senso, se devo cercare qualcosa che non so se c'è e neppure dove è, come faccio a dargli il percorso? :S
Linux Registred User # 534704
myHardware  myHardware-shortList
Avatar utente
Laycastle
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1183
Iscrizione: sabato 9 aprile 2011, 21:54
Desktop: KDE 4.8
Distribuzione: Gentoo ~amd64
Località: Torino

Re: [risolto]Comando locate per singola cartella

Messaggio da Laycastle »

il secondo poi per il "mio" utilizzo ha poco senso, se devo cercare qualcosa che non so se c'è e neppure dove è, come faccio a dargli il percorso?
Intendevo il percorso della cartella da cui devi iniziare a cercare.
Ultima cosa, il "d" sta per directory? se fosse stato un file esempio .avi, .jpg dovrei sostituire la d con avi o jpg?
Si, il d sta per directory, quello che vuoi fare non funziona perché quelli sono semplicemente file regolari.

Codice: Seleziona tutto

find cartella -type f -name "pippo.avi"
(f sta appunto per file regolare).

Continuo a non capire perché

Codice: Seleziona tutto

find cartella -type d -name "pippo"
non ti funziona.
la via più breve tra due punti è l'arabesco.
Avatar utente
crap0101
Rampante Reduce
Rampante Reduce
Messaggi: 8242
Iscrizione: martedì 30 ottobre 2007, 6:33
Desktop: LXDE
Distribuzione: Ubuntu 18.04.1 LTS
Sesso: Maschile
Località: TO
Contatti:

Re: Comando locate per singola cartella

Messaggio da crap0101 »

kan3malato ha scritto: Si ma non fungono :S il secondo poi per il "mio" utilizzo ha poco senso, se devo cercare qualcosa che non so se c'è e neppure dove è, come faccio a dargli il percorso? :S
bè, anche a find devi dare un percoso in cui cercare, comunque in questo caso è effettivamente meglio usare find, anche se l'assenza di risultati di locate potrebbe essere data dal db non aggiornato.
http://www.gnu.org/ http://boinc.berkeley.edu/ http://www.python-it.org/
- Ricorda le ultime parole di suo padre: «Sta' alla larga dalle chiese, figlio. La sola cosa per cui hanno la chiave è il merdaio. E giurami che non porterai mai un distintivo della legge» - W.S. Burroughs
Avatar utente
kan3malato
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 278
Iscrizione: mercoledì 23 marzo 2011, 0:20
Desktop: Unity what else?
Distribuzione: UbuntuPrecisePangolin12.04i686

Re: Comando locate per singola cartella

Messaggio da kan3malato »

crap0101 ha scritto:
kan3malato ha scritto: Si ma non fungono :S il secondo poi per il "mio" utilizzo ha poco senso, se devo cercare qualcosa che non so se c'è e neppure dove è, come faccio a dargli il percorso? :S
bè, anche a find devi dare un percoso in cui cercare, comunque in questo caso è effettivamente meglio usare find, anche se l'assenza di risultati di locate potrebbe essere data dal db non aggiornato.
Ciao.
Locate mi da i risultati (troppi appunto) cercavo un comando con "locate" per selezionare un singolo file o cartella.
con il comando di difesacorsosempione

Codice: Seleziona tutto

find -type d -a -name pippo
funziona, anche cambiando la "d" con la "f" (sto facendo dlle prove. :)
lycastle Continuo a non capire perché
CODICE: SELEZIONA TUTTO
find cartella -type d -name "pippo"

non ti funziona.
Non so che dire :S guarda ho il file pippo.txt sul desktop prova a scrivermi tu i due comandi corretti che hai postato sopra(giusto per togliersi curiosità). :D
Linux Registred User # 534704
myHardware  myHardware-shortList
Avatar utente
difesaparcosempione
Rampante Reduce
Rampante Reduce
Messaggi: 6031
Iscrizione: giovedì 27 luglio 2006, 19:06
Località: Torino
Contatti:

Re: [risolto]Comando locate per singola cartella

Messaggio da difesaparcosempione »

per completare l'argomento:

a ) Si può decidere da dove partire con la ricera
b) si può cercare un nome
o
c) cercare files o directory

find farebbe n-mila altre cosette e le potresti scoprite leggendo la man page
man find

Quindi

find /dir/di/partenza -name pippo.mp3

se hai anache una sootdirectory piippo.mp3 sarà il caso che ti troverà file e directory.

A volte la find la puoi usare sapendo solo una parte del nome
find /dir/di/partenza -name "*pippo*"
o ancora
find /dir/di/partenza -iname "*pippo*"
cosi troverai Pippo.jpg PIPPO.bmp e via dicendo

ciao
Avatar utente
Laycastle
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1183
Iscrizione: sabato 9 aprile 2011, 21:54
Desktop: KDE 4.8
Distribuzione: Gentoo ~amd64
Località: Torino

Re: Comando locate per singola cartella

Messaggio da Laycastle »

kan3malato ha scritto: Non so che dire :S guarda ho il file pippo.txt sul desktop prova a scrivermi tu i due comandi corretti che hai postato sopra(giusto per togliersi curiosità). :D

Codice: Seleziona tutto

find ~/Scrivania -type f -name "*pippo*" 
la via più breve tra due punti è l'arabesco.
Avatar utente
kan3malato
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 278
Iscrizione: mercoledì 23 marzo 2011, 0:20
Desktop: Unity what else?
Distribuzione: UbuntuPrecisePangolin12.04i686

Re: [risolto]Comando locate per singola cartella

Messaggio da kan3malato »

Allora il man, tutte le volte che provo a lanciarlo non vengo mai a capo di niente (o quasi mai), mi sembra solo un gran casino...
Per quanto riguarda i percorsi sono riuscito a farli fungere, erano gli slash che mi confodevano(?)[quotefind /dir/di/partenza -name pippo.mp3][/quote] perchè ne hai messi 3? non bastava
find /directory di partenza -name pippo.mp3
?
@lycastle
Ora fungono anche i tuoi primi 2 comandi :) (avevi ommesso gli slash nel primo) :D
il secondo:
Noto che anche tu qui hai messo i 3 slash (evidentemente è così che si fa) ma il comando che ha funzionato è così

Codice: Seleziona tutto

locate -r '^/home/.*pippo$'
:proud:


PS
Stavo appunto cercando un bel libro(di carta da comprare, no pdf o roba varia) sui comandi da shell
che mi consigliate?
C'è una specie di bibbia? :D
Linux Registred User # 534704
myHardware  myHardware-shortList
Avatar utente
Laycastle
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1183
Iscrizione: sabato 9 aprile 2011, 21:54
Desktop: KDE 4.8
Distribuzione: Gentoo ~amd64
Località: Torino

Re: [risolto]Comando locate per singola cartella

Messaggio da Laycastle »

kan3malato ha scritto:Allora il man, tutte le volte che provo a lanciarlo non vengo mai a capo di niente (o quasi mai), mi sembra solo un gran casino...
C'è una specie di bibbia? :D
Si! http://www.pluto.it/files/ildp/guide/abs/
:D
Per quanto riguarda i percorsi sono riuscito a farli fungere, erano gli slash che mi confodevano(?)
find /dir/di/partenza -name pippo.mp3]
perchè ne hai messi 3?
lol, li ho usati come separatori, in modo che fosse anche nella forma di un percorso, con gli spazi ho valutato che ci sarebbe potuti confondere. u_u
Noto che anche tu qui hai messo i 3 slash (evidentemente è così che si fa) ma il comando che ha funzionato è così

Codice: Seleziona tutto

locate -r '^/home/.*pippo$'
:proud:
ma dove lo vedi il terzo. o_O

Ciao.
la via più breve tra due punti è l'arabesco.
Avatar utente
kan3malato
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 278
Iscrizione: mercoledì 23 marzo 2011, 0:20
Desktop: Unity what else?
Distribuzione: UbuntuPrecisePangolin12.04i686

Re: [risolto]Comando locate per singola cartella

Messaggio da kan3malato »

LI no perchè è quello che ho postato io :D

ma sui tuoi si:
locate -r '^/percorso/cartella/.*pippo$'
Ma ripeto, pure difesaparcosempione ne ha messi 3 (però in questo caso mi ha messo la pulce nell'orecchi0)
find /dir/di/partenza -name pippo.mp3
Quindi presuppongo di essere io difetto e che sia normale che vengano scrittio così :birra:
Linux Registred User # 534704
myHardware  myHardware-shortList
Avatar utente
kan3malato
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 278
Iscrizione: mercoledì 23 marzo 2011, 0:20
Desktop: Unity what else?
Distribuzione: UbuntuPrecisePangolin12.04i686

Re: [risolto]Comando locate per singola cartella

Messaggio da kan3malato »

kan3malato ha scritto:LI no perchè è quello che ho postato io :D

ma sui tuoi si:
locate -r '^/percorso/cartella/.*pippo$'
Ma ripeto, pure difesaparcosempione ne ha messi 3 (però in questo caso mi ha messo la pulce nell'orecchi0)
find /dir/di/partenza -name pippo.mp3
Quindi presuppongo di essere io in difetto e che sia normale che vengano scritti così :birra:
Linux Registred User # 534704
myHardware  myHardware-shortList
l3on4rdo

Re: [risolto]Comando locate per singola cartella

Messaggio da l3on4rdo »

lol :)
Se hanno messo tre slash è solo per separare le parole e rendere quanto scritto più leggibile.
Non è che devi scrivere una cosa tipo /ho/me/ ;)
È come se ti avesser0 scritto:

Codice: Seleziona tutto

percorso_cartella
oppure

Codice: Seleziona tutto

percorsoCartella
... insomma in qualche modo le parole vanno "staccate" :)
Avatar utente
kan3malato
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 278
Iscrizione: mercoledì 23 marzo 2011, 0:20
Desktop: Unity what else?
Distribuzione: UbuntuPrecisePangolin12.04i686

Re: [risolto]Comando locate per singola cartella

Messaggio da kan3malato »

:D A beelllo!!
E' ce lo so, ci sono arrivato, dai ,dai... :shy:
Ma credimi, non è così scontato se uno non è del mestiere, infatti credo, che come lo hai messo tu (e a dire il vero, come mi era capitato di trovare fino ad ora) sia più intuitivo e a scanso di errore :)



ps
:ot: L3on4' segnalami un libro dove investire qualche decina di euro (da comprare, cartaceo)
Sui comandi da terminale ecc ecc, qual'è il top?
Linux Registred User # 534704
myHardware  myHardware-shortList
l3on4rdo

Re: [risolto]Comando locate per singola cartella

Messaggio da l3on4rdo »

Ti rispondo qui, perché la discussione è risolta.
In generale, però, è meglio usare i messaggi privati ;)

Allora, non so se io sia il top per dare un consiglio di questo tipo, ma ti posso dire come ho fatto io per arrivare a vette di conoscenza di bash così elevate ;D
Scherzi a parte, mi sono stampato la manpage di bash e me la sono letta, poi ho letto le due guide che trovi nel wiki di questo sito (sezione Programmazione, linguaggio bash). Mi riferisco al primo e al secondo link che trovi in fondo alla pagina della documentazione che ti ho linkato. Sono testi che puoi tranquillamente scaricare e poi stampare. Certo, spendi più di dieci euro, a meno che non scrocchi la stampa come ho fatto io :)
Ciao.
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 14 ospiti