Укажите wget, чтобы он отражал части пути URI к папкам

Укажите wget, чтобы он отражал части пути URI к папкам

У меня есть список URI в файле uris.txt:

http://example.com/file1.pdf
http://example.com/file2.pdf
http://example.com/Folder/file3.pdf
http://example.com/Folder/Subfolder/file4.pdf

Предполагается, что результирующая структура каталогов на моем жестком диске будет следующей:

|
|-file1.pdf
|-file2.pdf
|-Folder
  |-file3.pdf
  |-Subfolder
    |-file4.pdf

Моя текущая команда:wget -i uris.txt -P downloads

К сожалению, wget выравнивает все каталоги, то есть имя файла определяется путем объединения базового каталога (заданного параметром -P в командной строке) и последней части пути URI.

Поддержание структуры каталогов, обслуживаемых сервером, возможно, но только с помощьюрекурсивный режим, который работает только с HTML и CSS, а не с заданным списком URI.

решение1

Этого можно добиться с помощью дополнительных опций -xили --force-directoriesи -nHили --no-host-directories, чтобы избежать верхнего каталога example.com.

решение2

Предлагаемое чтение, которое даст ответ вна будущееспособ:

man wget

Ищите --no-host-directoriesи--cut-dirs=number

--no-host-directories
заставит wget пропустить создание каталога с именем «example.com» для размещения всех данных.

--cut-dirs=номер
То же самое сделаем для numberподкаталогов, считая сверху.

Связанный контент