Intereting Posts
Не удалось запустить запрошенную программу CGI: /www/cgi-bin/first.cgi: текстовый файл занят Скопировать символические ссылки из файла ext3 в cifs Почему цитирование исполняемого файла постоянно меняет название PuTTY? Не удается получить доступ к жестким дискам с установочного компакт-диска FreeBSD. Не удалось заставить SANE работать над малиной Pi Задержка ввода-вывода измерительного блока с использованием proc FS Как получить счетчики для swap-in / swap-out в Linux? Как автоматически выполнить «netctl start tq84-wifi» при загрузке? Раскрашивание хвостового выхода с помощью sed Проблемы с загрузкой с opensuse 15 и рабочей станцией vmware 14 Почему происходит перебор находок на выходе плохой практики? Отправка zip-файла, содержащего простой текстовый файл по электронной почте Сортировка файлов с определенным расширением с измененным временем и сохранение их в массив Командная строка Эквивалентно MacOSX stat -f «% m% t% Sm% N» в Linux? Expect script: удалить пароль в закрытом ключе

Загрузите список веб-страниц в файл и переименуйте их, чтобы избежать перезаписи?

$ wget -r -np -nH --cut-dirs=2 -p -k "http://www.example.com/1" -O test.html Cannot specify both -k and -O if multiple URLs are given, or in combination with -p or -r. See the manual for details. Usage: wget [OPTION]... [URL]... 

Интересно, как решить проблему?

В моей реальной проблеме я сохранил URL-адреса списка в текстовом файле, например

 http://www.example.com/1 http://www.example.com/2 http://www.example.com/3 

Я хочу загрузить каждую веб-страницу с необходимыми аффилированными файлами для перемещения веб-страницы.

По умолчанию каждый загруженный файл называется index.html , поэтому перезаписывает ранее загруженную веб-страницу. Поэтому я пытаюсь переименовать загруженные файлы в числа, представляющие их порядок загрузки:

 i=0 for url in $(cat ../htmls); do wget -r -np -nH --cut-dirs=1 -p -k "$url" -O $(printf %04d $i).html; i=$((i+1)) done 

То есть, когда появляется ошибка в начале.

Вам понадобятся файлы index.html так как различные ссылки на веб-страницах будут опираться на них. Я бы просто сохранил каждую веб-страницу в своем собственном каталоге:

 while read url; do mkdir "$url"; cd "$url" wget -r -np -nH --cut-dirs=1 -p -k "$url" cd ../ done 

Как оказалось, wget уже делает это по умолчанию, поэтому вместо этого используйте подход Стивена .

По умолчанию wget с -r – хранить загруженные файлы в каталогах, соответствующих URL-адресу, поэтому вы можете просто позволить ему это сделать:

 wget -r -np -p -i myurls 

(где myurls – ваш файл, содержащий загружаемые URL).

Полученная масса каталогов может быть не очень приятной для вас, но она обеспечит вам все, что вам нужно для отображения загруженных файлов, и что ничто не перезаписывается …