wget для получения всех файлов в каталоге только возвращает index.html

Способ заставить rsync иметь то же представление в качестве CP состоит в том, чтобы записать его "CP".

Разница между двумя командами является значительной даже при том, что результирующий эффект может быть тем же. В частности, rsync делает набор чтения, чтобы видеть, должны ли некоторый файл или часть файла быть скопированы.

Есть ли некоторая причина, что Вы хотите использовать rsync? Поскольку CP копирует "вслепую", Вы будете видеть более высокую необработанную производительность. Если для ряда условий инициирования механизм "передачи дельты" rsync будет использоваться, то Вы будете видеть отбрасывание скоростей передачи и использование ЦП для повышения в значительной степени таким образом, Вы сообщаете.

4
18.04.2015, 04:36
2 ответа

-Подобные действия, подобные Sample * в bash

Не на основании моего прочтения man wget :

  • -A acclist - accept acclist
  • -R rejlist --reject rejlist

Укажите разделенные запятыми списки суффиксов или шаблонов имен файлов для принятия или отклонения. Обратите внимание, что если любой из подстановочных знаков, *,?, [или], появится в элементе acclist или rejlist, он будет рассматриваться как образец , а не как суффикс .

Таким образом, ваше использование (без подстановочных знаков) эквивалентно bash glob *. Sample .

Wget работает, сканируя ссылки, вероятно, поэтому он пытается загрузить index.html (вы не сказали, что это за содержимое, если таковое имеется, просто это заняло много времени time) - оно должно с чего начать. Для дальнейшего объяснения: URL - это , а не путь к файлу . Вы не можете сканировать веб-сервер, как если бы это была иерархия каталогов, говоря: «Дайте мне все файлы в каталоге foobar ». Если foobar соответствует реальному каталогу (это, конечно, не обязательно, потому что это часть URL-адреса, а не путь к файлу), веб-сервер может быть настроен для предоставления autogenerated index.html перечисляет файлы, создавая иллюзию, что вы можете просматривать файловую систему. Но это не часть протокола HTTP, это просто соглашение, используемое по умолчанию с такими серверами, как apache. wget сканирует, например, index.html для и и т. Д., затем он переходит по этим ссылкам и делает то же самое рекурсивно. Именно к этому относится "рекурсивное" поведение wget - он рекурсивно сканирует ссылки, потому что (повторюсь) у него нет доступа к какой-либо файловой системе на сервере, и сервер не должен предоставлять ему ЛЮБУЮ информацию относительно таких .

Если у вас есть настоящая веб-страница .html , которую вы можете загрузить и щелкнуть по всем нужным вам вещам, начните с этого адреса и используйте только -r -np -k - стр .

3
27.01.2020, 20:58

Что происходит, когда вы подключаетесь к странице в браузере?

Если вы просматриваете страницы без проблем, то может быть пара вещей, которые вам не хватает.

Страница может проверять Ваш браузер, и Mozilla не является правильным ответом, выберите одну из строк браузера из here (вся строка, не только Mozilla) и попробуйте проверить, работает ли она.

Если нет, то Вам могут понадобиться куки-файлы, получите куки-файлы, соединяющиеся с главной страницей с помощью wget и сохраните их. Затем используйте wget с этими cookies и попробуйте загрузить страницы.

Попробуйте воспользоваться опцией -зеркало , если хотите его зеркалировать.

Если ничего не работает, я изучу соединение и страницы. Живые http заголовки, добавленные для Firefox - довольно крутой инструмент. Вы можете увидеть всю связь между вашим браузером и веб-страницей. Попробуйте подражать этому поведению с wget, чтобы получить то, что вы ищете.

0
27.01.2020, 20:58

Теги

Похожие вопросы