Є вагома причина, що це не може працювати безпосередньо з HTTP, і це те, що URL-адреса не є файловим шляхом, хоча використання /
розмежувача може зробити його схожим, і вони іноді відповідають. 1
Зазвичай (або, історично склалося), веб-сервери часто роблять ієрархії дзеркальних каталогів (для деяких - наприклад, Apache - це свого роду інтеграл) і навіть надають індекси каталогів, як файлова система. Однак нічого про протокол HTTP цього не вимагає.
Це дуже важливо, тому що якщо ви хочете застосувати Glob на , скажімо, все , що є подпуть http://foo/bar/
, якщо сервер не надає якої - то механізм , щоб надати вам такий (наприклад , згаданий вище індекс), немає нічого , щоб застосувати його в Glob до . Тут немає файлової системи для пошуку. Наприклад, тільки тому, що ви знаєте, що є сторінки, http://foo/bar/one.html
і http://foo/bar/two.html
це не означає, що ви можете отримати список файлів і підкаталогів через http://foo/bar/
. Це було б повністю за протоколом, щоб сервер повертав 404 для цього. Або може повернути список файлів. Або він може надіслати вам приємне зображення у форматі jpg. І т.д.
Тож тут немає жодного стандарту, який би wget
міг експлуатувати. AFAICT, wget працює над відображенням ієрархії шляху шляхом активного вивчення посилань на кожній сторінці . Іншими словами, якщо ви рекурсивно дзеркально http://foo/bar/index.html
завантажуєте, index.html
а потім витягуєте посилання, які є підпунктом цього. 2-A
перемикач просто фільтр , який застосовується в цьому процесі.
Якщо коротко, якщо ви знаєте, що ці файли десь індексовані, ви можете почати з цього використання -A
. Якщо ні, то вам не пощастило.
1. Звичайно, URL-адреса FTP також є URL-адресою. Однак, хоча я мало що знаю про протокол FTP, я б здогадався, виходячи з природи, що він може бути такою формою, яка дозволяє здійснювати прозоре глобулювання.
2. Це означає, що може бути дійсна URL-адреса, http://foo/bar/alt/whatever/stuff/
яка не буде включена, оскільки вона жодним чином не пов'язана ні з чим у наборі речей, пов’язаних із цим http://foo/bar/index.html
. На відміну від файлових систем, веб-сервери не зобов’язані робити макет свого вмісту прозорим, а також не потрібно робити це інтуїтивно зрозумілим чином.
curl "http://example.com/picture[1-10].jpg" -o "picture#1.jpg"