Как обрабатывать найти множество шаблонов файлов / каталогов в Wget

голоса
0

Таким образом , у меня есть каталог с миллионом файлов и каталогов 50k вложенных 10 слоев глубиной примерно. Это занимает много времени , чтобы просто пройти и принести 100 байт файла из 1/10 каталогов, потому что он должен FTP в каждом каталоге и делать все , что он делает. Это , вероятно , занимает несколько часов , чтобы сделать это, даже если на самом деле не какой - либо контент загружается.

Таким образом, одним из путей решения моей проблемы (или то, что я пытаюсь), чтобы сделать это:

function download() {
  wget -r \
    -c \
    -A $3 \
    -A $2 \
    $1$2
}

domain=ftp://domain.com
path=/foo

download $domain $path $path/*/README*
download $domain $path $path/*/data.xml
download $domain $path $path/*/ARCHIVE_*/*.gz
download $domain $path $path/*/Bar/example.txt
download $domain $path $path/*/Hello/*/world.*.txt

Но это не совсем еще работать, я хочу каждую строку на самом деле просто скачать эти шаблоны, но, кажется, у меня есть немного больше работы, чтобы сделать там. Я получаю кучу из них:

Rejecting 'README'
Rejecting 'X_Y_Z.gz'
...

Затем я попытался просто сделать это:

download $domain $path \
  $path/*/README*,$path/*/data.xml,$path/*/ARCHIVE_*/*.gz,$path/*/Bar/example.txt,$path/*/Hello/*/world.*.txt

Но все же вопрос.

Вопрос заключается в том , как я могу сделать эту одну wget команду (так что не нужно повторно обработать весь каталог FTP Дерево 5 раз) загрузить только файлы / каталоги , соответствующие эти шаблоны.

Стараюсь изменения -Aв -Iи он начинает загрузку вещи , я не хочу:

function download() {
  wget -r \
    -c \
    -I $3 \
    -I $2 \
    $1$2
}

Я попробовал это тоже , но он загружает материал , который я не хочу:

function download() {
  wget -r \
    -c \
    --accept-regex $3 \
    $1$2
}

domain=ftp://domain.com
path=/foo

download $domain $path \
  $path/.*/README.*,$path/.*/data.xml,$path/.*/ARCHIVE_.*/.*.gz,$path/.*/Bar/example.txt,$path/.*/Hello/.*/world..*.txt
Задан 07/11/2018 в 19:55
источник пользователем
На других языках...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more