Per la directory corrente:
find -type f | wc -l
Dovrebbe funzionare:
find DIR_NAME -type f | wc -l
Spiegazione:
-type f
per includere solo i file.|
(e non¦
) reindirizzafind
l'output standard del comando inwc
input standard del comando.wc
(abbreviazione di word count) conta newline, parole e byte sul suo input (docs).-l
contare solo le nuove righe.
Note:
- Sostituisci
DIR_NAME
con.
per eseguire il comando nella cartella corrente. - Puoi anche rimuovere
-type f
per includere le directory (e i collegamenti simbolici) nel conteggio. - È possibile che questo comando superi il conteggio se i nomi dei file possono contenere caratteri di nuova riga.
Spiegazione del motivo per cui il tuo esempio non funziona:
Nel comando che hai mostrato, non usi il "Pipe" (|
) per collegare in qualche modo due comandi, ma la barra spezzata (¦
) che la shell non riconosce come comando o qualcosa di simile. Ecco perché ricevi quel messaggio di errore.