Curiosità comando find

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
Burroughs
Linux 4.x
Linux 4.x
Messaggi: 1076
Iscritto il: mer 15 dic 2004, 0:00
Nome Cognome: Andrea Lutri
Kernel: 3.16.0
Desktop: KDE SC 4.13.3
Distribuzione: Arch Linux
Località: Glasgow
Contatta:

Curiosità comando find

Messaggio da Burroughs »

Buona serata a tutti!

Scusate la domanda molto niubba, ma avrei una domandina da porvi: mi interesserebbe conoscere il numero di file contenuti nella mia directory Documents.
Il comando che lancio è il seguente:

Codice: Seleziona tutto

find Documents |wc -l
ma non so se, così facendo, vengono conteggiati anche i file nascosti, cosa che non voglio.
A me interessa includere nel computo directory, sotto-directory, file, ma non directory e file nascosti.
Come fare?

Grazie,

Burroughs.
"Two things are infinite: the universe and human stupidity; and I'm not sure about the universe" (Albert Einstein)

Avatar utente
Slack_Eater
Linux 1.x
Linux 1.x
Messaggi: 163
Iscritto il: gio 14 feb 2008, 21:29
Nome Cognome: Giuseppe Scalzi
Slackware: 13.37
Kernel: 2.6.38.2-smp
Desktop: KDE 4.7.0
Località: Svizzera
Contatta:

Re: Curiosità comando find

Messaggio da Slack_Eater »

Prova a usare "tree", che ti dice il numero di file e directory che trova senza i file e le directory nascoste.

Codice: Seleziona tutto

tree
........
   |   |-- problems04-v11-1.pdf
    |   |-- problems06-v110.pdf
    |   |-- problems07.pdf
    |   |-- problems08.pdf
    |   |-- problems09-v111.pdf
    |   |-- problems10-v110.pdf
    |   |-- pwcrypt.tgz
    |   |-- rfc3739.txt
    |   |-- rfc5280.txt
    |   |-- shadow.txt
    |   |-- smart_book.pdf
    |   |-- solutions.zip
    |   |-- tcpip.pdf
    |   |-- tls_ren.pdf
    |   |-- unmasked.pdf
    |   `-- wir^H^H
    `-- oldemail_09032012.tar.gpg

116 directories, 812 files

Spero sia quello che cercavi

Avatar utente
fgcl2k
Linux 1.x
Linux 1.x
Messaggi: 137
Iscritto il: gio 29 ott 2009, 10:14
Nome Cognome: Federico
Slackware: 14.1 (64bit)
Kernel: 3.10.17
Desktop: KDE 4.13.3

Re: Curiosità comando find

Messaggio da fgcl2k »

Io proverei con

Codice: Seleziona tutto

find Documents -type f | grep -v "/\." | wc -l

Avatar utente
jdrake
Linux 0.x
Linux 0.x
Messaggi: 50
Iscritto il: sab 28 mag 2005, 0:00
Slackware: Current x86_64
Kernel: 3.18.11
Desktop: OpenBox 3.5.2

Re: Curiosità comando find

Messaggio da jdrake »

Burroughs ha scritto:A me interessa includere nel computo directory, sotto-directory, file, ma non directory e file nascosti.
Ok, partecipo pure io con:

Codice: Seleziona tutto

find Documents \( ! -iname ".*" \) | wc -l
:)

Avatar utente
fgcl2k
Linux 1.x
Linux 1.x
Messaggi: 137
Iscritto il: gio 29 ott 2009, 10:14
Nome Cognome: Federico
Slackware: 14.1 (64bit)
Kernel: 3.10.17
Desktop: KDE 4.13.3

Re: Curiosità comando find

Messaggio da fgcl2k »

jdrake ha scritto:
Burroughs ha scritto:A me interessa includere nel computo directory, sotto-directory, file, ma non directory e file nascosti.
Ok, partecipo pure io con:

Codice: Seleziona tutto

find Documents \( ! -iname ".*" \) | wc -l
:)
Però così conteggi anche le directory nascoste :-)
Mi era sfuggito che era richiesto anche il conteggio delle directory:

Codice: Seleziona tutto

find Documents | grep -v "/\." | wc -l

Avatar utente
jdrake
Linux 0.x
Linux 0.x
Messaggi: 50
Iscritto il: sab 28 mag 2005, 0:00
Slackware: Current x86_64
Kernel: 3.18.11
Desktop: OpenBox 3.5.2

Re: Curiosità comando find

Messaggio da jdrake »

fgcl2k ha scritto:Però così conteggi anche le directory nascoste
Verissimo...
#-o
Grazie!

Avatar utente
Burroughs
Linux 4.x
Linux 4.x
Messaggi: 1076
Iscritto il: mer 15 dic 2004, 0:00
Nome Cognome: Andrea Lutri
Kernel: 3.16.0
Desktop: KDE SC 4.13.3
Distribuzione: Arch Linux
Località: Glasgow
Contatta:

Re: Curiosità comando find

Messaggio da Burroughs »

Prima di tutto, grazie, ragazzi, per l'aiuto... :)
Allora, ho provato a lanciare il tree, come suggeritomi da Slack_Eater, ottenendo alla fine questo risultato:

Codice: Seleziona tutto

5221 directories, 30120 files
mentre con

Codice: Seleziona tutto

find Documents | grep -v "/\." | wc -l
ottengo questo output:

Codice: Seleziona tutto

35342
insomma, la discrepanza fra i due comandi è di un solo file (35341 contro 35342).
Come mai, secondo voi?

Burroughs.
"Two things are infinite: the universe and human stupidity; and I'm not sure about the universe" (Albert Einstein)

Avatar utente
masalapianta
Iper Master
Iper Master
Messaggi: 2775
Iscritto il: lun 25 lug 2005, 0:00
Nome Cognome: famoso porco
Kernel: uname -r
Desktop: awesome
Distribuzione: Debian
Località: Roma
Contatta:

Re: Curiosità comando find

Messaggio da masalapianta »

Burroughs ha scritto: insomma, la discrepanza fra i due comandi è di un solo file (35341 contro 35342).
Come mai, secondo voi?

Burroughs.
perchè tree non conta la directory '.' mentre find si

Rispondi