
Potrebbe essere necessario sapere quanti file sono presenti all’interno di una determinata cartella vediamo alcuni modo per farlo da terminale.
Il modo più semplice per contare i file in una directory è elencare un file per riga con ls e convogliare l’output per contare le righe wc
ls -1 DIR_NAME | wc -l
Questo comando restituisce la somma di tutti i file tranne quelli nascosti (dotfile), incluse directory e collegamenti simbolici.
Se si desidera contare solo i file e non includere le directory, è possibile utilizzare questo comando:
ls -1p DIR_NAME | grep -v / | wc -l
L’opzione -p
permette di aggiungere l’indicatore slash /
alle directory.
L’output viene reindirizzato al comando grep -v che esclude le directory.

In alternativa potete usare il comando tree, se non è presente sul vostro sistema basterà installarlo con il comando apt install tree quindi digitate il seguente comando:
tree NOME_DIRECTORY
Dopo aver mostrato il contenuto della directory l’ultima riga mostrerà il numero totale dei file e delle directory elencate.
Se avete bisogno di un controllo maggiore sui file elencati, è possibile utilizzare il comaando find anziché ls
:
find NOME_DIRECTORY -maxdepth 1 -type f | wc -l
L’opzione -type f
permette a find
di elencare solo i file (compresi i dotfile) e di limitare la ricerca alla directory di primo livello con -maxdepth 1
.
Per contare ricorsivamente i file nella directory occorre eseguire il comando find
come segue:
find DIR_NAME -type f | wc -l