Параллель и wget, чтобы загрузить и генерировать заказанный имена файлов цифры

У меня есть a filelist с тысячами полных путей в несовместимо именованные файлы, как это:

file1A-2
file-76B
fileC-23
  (...)
file9B-1

Я ищу способ использовать parallel, wget/curl/aria2 или подобные инструменты для загрузки всех файлов с filelist использование многочисленных связей и процессов, сохранив каждый файл с новым именем в правильном порядке, как это:

file1A-2     >    file0001
file-76B     >    file0002
fileC-23     >    file0003
           (...)
file9B-1     >    file9999
4
задан 29 October 2016 в 12:17

1 ответ

Вот основная идея:

i=0
for url in $(grep -v '#' "$1") ; do 
  ((i++))
  wget --output-document="file"$(printf "%03d" $i) "$url"
done

у меня нет опыта с parallel, но это, кажется, делает задание:

i=0
for s in $(grep -v '#' "$1") ; do 
  ((i++))
  parallel --no-notice -n0 wget --output-document="file"$(printf "%03d" $i) "$s" ::: {1..1}
done

Эти сценарии ожидают файл списка как аргумент на командной строке.

3
ответ дан 1 December 2019 в 10:01

Другие вопросы по тегам:

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