Як завантажити список файлів з файлового сервера?


9

Як я можу завантажити список файлів з подібного файлового сервера http://www.apache.org/dist/httpd/binaries/ ?

Я думаю, я міг би використовувати wget, але тоді він намагається отримати всі посилання та файл HTML. Чи є кращий інструмент для цього?


просто для уточнення вашого питання: ви просто хочете переліку файлів, які можна було б завантажити з сервера, а не самих файлів (поки що)?
акіра

Яким чином така команда, як `wget --no-verbose --spider --no-каталоги --recursive --level = 2 apache.org/dist/httpd/binaries` для вас не працює? Якщо ви можете бути більш конкретними, що може допомогти
DaveParillo

Відповіді:


12

Ви можете вказати, які розширення файлів wgetзавантажуватимуться під час сканування сторінок:

wget -r -A zip,rpm,tar.gz www.site.com/startpage.html

це буде виконувати рекурсивний пошук і завантажувати тільки файли з .zip, .rpmі .tar.gzрозширень.


8

припустимо, що ви справді просто хочете, щоб список файлів на сервері не добирав їх (поки):

%> wget -r -np --spider http://www.apache.org/dist/httpd/binaries/ 2> & 1 | awk -f filter.awk | uniq

а "filter.awk" виглядає приблизно так

/^--.*-- http: \ / \ /.* [^ \ /] $ / {u = $ 3; }
/ ^ Довжина: [[: цифра:]] + / {print u; }

то, можливо, доведеться відфільтрувати деякі записи, як-от

"http://www.apache.org/dist/httpd/binaries/?C=N;O=D"

0

Посилання: http://blog.incognitech.in/download-files-from-apache-server-listing-directory/

Ви можете використовувати таку команду:

wget --execute="robots = off" --mirror --convert-links --no-parent --wait=5 <website-url>

Пояснення з кожним варіантом

  • wget: Проста команда, щоб зробити CURL-запит і завантажити віддалені файли на нашу локальну машину.
  • --execute="robots = off": Це ігнорує файл robots.txt під час перегляду сторінок. Це корисно, якщо ви не отримуєте всі файли.
  • --mirror: Цей параметр в основному відображає структуру каталогу для вказаної URL-адреси. Це ярлик, -N -r -l inf --no-remove-listingякий означає:
    • -N: не повторно завантажуйте файли, якщо не новіші, ніж локальні
    • -r: вказати рекурсивне завантаження
    • -l inf: максимальна глибина рекурсії (інф або 0 нескінченно)
    • --no-remove-listing: не видаляйте файли ".listing"
  • --convert-links: зробити посилання у завантаженому HTML або CSS вказувати на локальні файли
  • --no-parent: не піднімайтеся до батьківського каталогу
  • --wait=5: зачекайте 5 секунд між завантаженнями. Так що ми не збиваємо сервер.
  • <website-url>: Це URL-адреса веб-сайту, звідки можна завантажити файли.

Щаслива завантаження: smiley:

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.