HTTP non ha davvero una nozione di directory. Le barre diverse dalle prime tre (http://example.com/
) non hanno alcun significato speciale se non rispetto a ..
negli URL relativi. Quindi, a meno che il server segua un formato particolare, non c'è modo di “scaricare tutti i file nella directory specificata”.
Se volete scaricare l'intero sito, la cosa migliore è attraversare ricorsivamente tutti i link della pagina principale. Curl non può farlo, ma Wget sì. Questo funzionerà se il sito non è troppo dinamico (in particolare, wget non vedrà i link che sono costruiti da codice Javascript). Inizia con wget -r http://example.com/
, e guarda sotto “Recursive Retrieval Options” e “Recursive Accept/Reject Options” nel manuale di wget per altre opzioni rilevanti (profondità di ricorsione, liste di esclusione, ecc.)
Se il sito web cerca di bloccare i download automatici, potrebbe essere necessario cambiare la stringa dello user agent (-U Mozilla
), e ignorare robots.txt
(creare un file vuoto example.com/robots.txt
e usare l'opzione -nc
in modo che wget non cerchi di scaricarlo dal server).