Загрузка файлов с помощью списка не работает должным образом - PullRequest
1 голос
/ 17 июня 2019

Я хочу загрузить все файлы, соответствующие определенному шаблону, из https://download.osmand.net/list.php.

Например, запуск

wget -nd -r -A 'list.php, *Sweden_*' https://download.osmand.net/list.php

только для загрузки list.php.

Если я использую

wget -nd -r -A 'list.php, *' https://download.osmand.net/list.php

Вместо этого загружаются все файлы.

Что не так с моим списком пользователей в первом примере?

1 Ответ

0 голосов
/ 18 июня 2019

Я сам не знал, исследуя этот ответ, я узнал что-то новое.

wget docs говорит:

‘- Аккаунт --accept acclist’
-R rejlist --reject rejlist’
Укажите разделенные запятыми списки суффиксов или шаблонов имен файлов для принятия или отклонения (см. Типы файлов). Обратите внимание, что если какой-либо из подстановочных знаков ‘’, ‘?’, ‘[’ Или ‘]’ появится в элементе acclist или rejlist, он будет рассматриваться как шаблон, а не как суффикс. В этом случае вы должны заключить шаблон в кавычки, чтобы предотвратить расширение его оболочкой, как в ‘-A" .mp3 "’ или ‘-A '* .mp3'’.

‘- accept-regex urlregex’
‘- reject-regex urlregex’
Укажите регулярное выражение для принятия или отклонения полного URL-адреса.

Похоже, что -A можно использовать для проверки расширений, но не полного шаблона ссылки. Для поиска по полной схеме вам понадобится опция --accept-regex urlregex.

Следующая команда сработала для меня.

wget -nd -r --accept-regex 'Sweden_' https://download.osmand.net/list.php
...