Saya memiliki persyaratan serupa dan kombinasi berikut tampaknya menjadi pilihan yang tepat:
Pada contoh di bawah ini, semua file di http://url/dir1/dir2 (sendiri) diunduh ke direktori lokal /dest/dir
wget -nd -np -P /dest/dir --recursive http://url/dir1/dir2
Terima kasih @ffledgling atas petunjuk tentang "-nd"
Untuk contoh di atas:
wget -nd -np --mirror --user=x --password=x ftp://ftp.site.com/folder/subfolder/evendeeper
Cuplikan dari manual:
-nd
--no-directories
Do not create a hierarchy of directories when retrieving recursively. With this option turned on, all files will get saved to the current directory, without clobbering (if a name shows up more than once, the
filenames will get extensions .n).
-np
--no-parent
Do not ever ascend to the parent directory when retrieving recursively. This is a useful option, since it guarantees that only the files below a certain hierarchy will be downloaded.
-np
(no parent) pilihan mungkin akan melakukan apa yang Anda inginkan, terkait dengan -L 1
(Saya pikir, jangan menginstal wget sebelum saya), yang membatasi rekursi ke satu tingkat.
EDIT. Oke. gah... mungkin aku harus menunggu sampai aku minum kopi.. Ada --cut
atau opsi serupa, yang memungkinkan Anda untuk "memotong" sejumlah direktori tertentu dari jalur keluaran, jadi untuk /a/b/c/d
, potongan 2 akan memaksa wget untuk membuat c/d
di mesin lokal Anda
Untuk jalur seperti:ftp.site.com/a/b/c/d
-nH
akan mendownload semua file ke direktori a/b/c/d
di direktori saat ini, dan -nH --cut-dirs=3
akan mendownload semua file ke direktori d
di direktori saat ini.