Ho fatto uno scraping del sito Web per un progetto di conversione. Vorrei fare alcune statistiche sui tipi di file in esso contenuti, ad esempio 400 .html
file, 100 .gif
, ecc. Qual è un modo semplice per farlo? Deve essere ricorsivo.
Modifica: Con lo script pubblicato da maxschelpzig, sto riscontrando alcuni problemi dovuti all'architettura del sito che ho raschiato. Alcuni dei file hanno il nome *.php?blah=blah&foo=bar
con vari argomenti, quindi li conta tutti come unici. Quindi la soluzione deve considerare *.php*
essere tutti dello stesso tipo, per così dire.
Risposta accettata:
Potresti usare find
e uniq
per questo, es.:
$ find . -type f | sed 's/.*.//' | sort | uniq -c
16 avi
29 jpg
136 mp3
3 mp4
Spiegazione del comando
find
stampa ricorsivamente tutti i nomi di filesed
cancella da ogni nome di file il prefisso fino all'estensione del fileuniq
presuppone un input ordinato-c
fa il conteggio (come un istogramma).