GNU/Linux >> Linux Esercitazione >  >> Linux

Il modo più veloce per contare i file in modo ricorsivo in Linux

Prima di fare un tour approfondito di questa guida all'articolo, dobbiamo prima capire cosa sta cercando di scoprire il pezzo dell'articolo. Dobbiamo capire o rispondere alla domanda "perché è importante contare i file in Linux '. L'ambizione di ogni amministratore Linux è avere familiarità con i dettagli dell'architettura del proprio sistema operativo.

Pertanto, è altrettanto importante conoscere la posizione e il numero di file di directory da amministrare/gestire. In questo caso, potresti avere migliaia di file generati manualmente o automaticamente da utenti o programmi di sistema e desideri tenere traccia del loro numero crescente o finito.

Ci sono diversi comandi integrati basati su Linux che possono aiutarti facilmente in tali circostanze. Tuttavia, se stiamo cercando il mezzo più rapido per raggiungere l'obiettivo di questo articolo, dobbiamo essere esigenti e rispettosi delle altre opzioni praticabili.

Un modo rapido per contare i file in modo ricorsivo in Linux

Pochi comandi Linux si distinguono in termini di conteggio dei file ricorsivo e veloce. Confrontiamo i due più popolari.

Il comando Trova di Linux contro il comando Trova

A scopo dimostrativo, prenderemo di mira il numero di file all'interno di /home/user directory del sistema operativo Linux.

Per ottenere la differenza di velocità tra il comando find e il comando locate, assoceremo la loro esecuzione al tempo integrato di Linux comando in modo da poter capire quale approccio al conteggio ricorsivo dei file è più veloce.

Dal comando trova è già preinstallato sul tuo sistema Linux, dobbiamo solo installare il individua comando prima di avviare il confronto della velocità di esecuzione.

$ sudo apt-get install mlocate     [On Debian, Ubuntu and Mint]
$ sudo yum install mlocate         [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
$ sudo emerge -a sys-apps/mlocate  [On Gentoo Linux]
$ sudo pacman -S mlocate           [On Arch Linux]
$ sudo zypper install mlocate      [On OpenSUSE]    

In riferimento a questa guida all'articolo, la posizione principale comando [OPZIONE] quello che ci interessa è -c , -count poiché stiamo cercando un output standard che rifletta un numero richiesto di conteggi di file.

Per prima cosa, usiamo il comando trova per contare il numero di file all'interno di /home/user directory. Il tuo comando dovrebbe essere in qualche modo simile al seguente:

$ time find /home/dnyce -type f | wc -l

In secondo luogo, vediamo quali risultati si ottengono in individuare il comando produrrà per il conteggio dei file nello stesso /home/user directory. La sua implementazione del comando è la seguente:

$  time locate -c /home/dnyce 

Con il tempo comando che tiene traccia del tempo di esecuzione di questi due comandi (trova e individuare ), possiamo notare che il individuare comando ricorsivamente scavato più a fondo per produrre più conteggi di file in meno tempo.

Per utilizzare Linux individuare comando, devi rispettare la seguente regola di sintassi:

$ locate [OPTION]… [PATTERN]…

Controllando il individuare pagina man del comando ($ man locate) , ti renderai conto anche che questo comando può essere utilizzato anche per altre funzionalità valide relative ai file.

Inoltre, anche se portiamo un altro comando popolare (comando ls) per contare i file in una directory mirata, non sarà ricorsivamente più profondo e veloce al livello di trova comando.

$ time ls /home/dnyce | wc -l

La posizione il comando è più veloce di trova comando perché il suo algoritmo di conteggio dei file è orientato al database e non al filesystem come la sua controparte.

Il comportamento funzionale predefinito di individuare il comando consiste nell'ignorare l'esistenza dei file interrogati al di fuori della portata del database. Inoltre, dopo l'ultimo aggiornamento riuscito del database sui file esistenti, individua comando non segnala immediatamente la creazione di nuovi file.


Linux
  1. 5 modi per usare il comando move in Linux

  2. Come utilizzare il comando trova di Linux per trovare i file

  3. Il comando locate in Linux

  4. Nascondi i file nascosti di Linux in Windows

  5. Il modo più veloce per sapere se due file hanno lo stesso contenuto in Unix/Linux?

Come modificare ricorsivamente le autorizzazioni dei file in Linux

Come cercare file dal Terminale su Linux

Come trovare file con il comando fd in Linux

Come elencare i file in modo ricorsivo in Linux

Come contare i file nella directory su Linux

Come contare il numero di file in una directory in Linux