Gestione dei file

Contare i file nella directory in modo ricorsivo

Contare i file nella directory in modo ricorsivo
A volte, è necessario calcolare il numero esatto di file disponibili in una directory specifica. Il problema sorge se la directory contiene una o più sottodirectory. A seconda del numero di file e directory, il conteggio manuale può essere praticamente impossibile.

In questa guida, scopri come contare i file in una directory in modo ricorsivo in Linux.

Conteggio file

Conteggio file di base
A scopo dimostrativo, ecco una directory di esempio con più sottodirectory.

$ albero demo_dir

Come puoi vedere, il comando tree stamperà l'intera struttura della directory in modo ricorsivo con il numero di file alla fine. Tuttavia, se il numero di file e directory è troppo grande, ottenere un rapporto non è efficiente.

Un modo alternativo è usare i comandi find e wc. Innanzitutto, il comando find genererà un elenco di file all'interno della directory. Quindi, il comando wc conterà la riga di output, determinando il numero di file.

Il comando sarà simile a questo.

$ trova -tipo f | wc -l

Nel caso del comando find, ecco una breve spiegazione dei flag e degli argomenti.

  • : La directory su cui eseguire il conteggio dei file.
  • -tipo f: determina il tipo di file (file/directory) da cercare. Qui, "f" significa solo per i file.

Nel caso del comando wc, ecco una breve spiegazione del flag.

  • -l: conta il numero di righe. Funziona contando il numero di caratteri di nuova riga nell'output.

Applichiamo il comando alla nostra directory di test.

$ trova ./demo_dir -type f | wc -l

Se possibile, si consiglia di utilizzare il percorso completo della directory.

$ trova /home/viktor/Desktop/demo_dir -type f | wc -l

Conteggio con le directory
Se nel conteggio devono essere incluse anche le directory, utilizzare invece la seguente struttura di comando. Il comando find stamperà le directory e i file successivi nell'output.

$ trova | wc -l

Profondità della directory
Il comando find supporta la profondità della directory. La profondità della directory determina la profondità con cui la ricerca scenderà nella ricerca dei file.

Esistono due tipi di profondità di directory che trovano supporto.

  • maxdepth: il livello massimo trovato scenderà. Il valore di maxdepth sarà un numero intero non negativo.
  • mindepth: la profondità minima richiesta affinché find agisca su una directory. Il valore di mindepth sarà un numero intero non negativo.

Diamo un'occhiata a questi valori in azione. La struttura del comando di ricerca sarebbe simile a questa.

$ trova -profondità massima

$ trova -minprofondità

Conteggio dei file utilizzando la GUI

Se hai la possibilità di utilizzare la GUI per verificare il conteggio dei file, possiamo contare i file in una directory utilizzando i gestori di file. I gestori di file consentono agli utenti di gestire i file e le directory in modo elegante. Qualsiasi file manager supporta tutte le funzioni di base come la ricerca, la copia, lo spostamento, la creazione e l'eliminazione di file. Alcuni file manager supportano anche funzionalità avanzate come le connessioni SSH.

Ecco alcuni dei migliori file manager disponibili per Linux. La maggior parte dovrebbe essere disponibile per tutte le popolari distribuzioni Linux.

Nautilus File Manager
È il file manager predefinito del desktop GNOME. Ha un'interfaccia utente molto semplicistica, facile navigazione e gestione.

Dai un'occhiata a Nautilus File Manager.

Gestore di file Konqueror
Konqueror è il gestore predefinito fornito con il desktop KDE. Ha un file manager semplicistico con funzionalità aggiuntive, come supporto FTP/SFTP, condivisioni smb (Windows), ripping audio, ecc.

Konqueror usa il motore di rendering KHTML. Dai un'occhiata a Konqueror.

Dolphin File Manager
Dolphin sostituisce Konqueror come file manager predefinito sul desktop KDE. È un file manager gratuito, open source e leggero che mira alla semplicità, alla flessibilità e alla personalizzazione completa. Consente agli utenti di navigare, localizzare, copiare e spostare file senza problemi nel sistema Linux. Incorpora altre funzionalità interessanti come l'anteprima dei file, la navigazione a schede, l'ordinamento e il raggruppamento dei file, ecc.

Dai un'occhiata a Delfino.

SpaceFM File Manager
A differenza degli altri file manager descritti, SpaceFM è un file manager autonomo che non è correlato ad alcun ambiente desktop. È un bellissimo file manager disponibile per tutte le popolari distribuzioni Linux. È dotato di integrazione bash, VFS integrato e personalizzazione del menu, ecc.

Dai un'occhiata a SpaceFM.

GNU Midnight CommanderNU
Infine, GNU Midnight Commander è un file manager per la riga di comando.  È un file manager a tutti gli effetti ma sullo schermo della console. Supporta tutte le funzioni classiche come la ricerca, la copia, lo spostamento e l'eliminazione di file, ecc.

Dai un'occhiata a GNU Midnight Commander.

Pensieri finali

Contare i file su Linux non è affatto difficile. Tutto ciò che serve è avere lo strumento e le conoscenze giuste per capire. Si spera che questa guida abbia avuto successo nel dimostrare come contare i file nelle directory in modo ricorsivo in Linux.

Buon calcolo!

Le migliori distribuzioni Linux per il gioco nel 2021
Il sistema operativo Linux ha fatto molta strada dal suo aspetto originale, semplice e basato su server. Questo sistema operativo è notevolmente migli...
Come acquisire e riprodurre in streaming la tua sessione di gioco su Linux
In passato, giocare era considerato solo un hobby, ma con il tempo l'industria dei giochi ha visto una crescita enorme in termini di tecnologia e nume...
I migliori giochi da giocare con il tracciamento delle mani
Oculus Quest ha recentemente introdotto la grande idea del tracciamento manuale senza controller. Con un numero sempre crescente di giochi e attività ...