2016-10-22 1 views
2

Сейчас я использую followin код:Curl список URL из файла и сделать его быстрее, с параллельным

while read num; 
    do M=$(curl "myurl/$num") 
    echo "$M" 
done < s.txt 

где s.txt содержит список (1 в каждой строке) части из URL-адрес.

Правильно ли считать, что завиток работает последовательно? Или он работает в потоке/заданиях/множественном соединении за раз?

Я нашел в Интернете:

parallel -k curl -s "http://example.com/locations/city?limit=100\&offset={}" ::: $(seq 100 100 30000) > out.txt 

Проблема заключается в том, что моя последовательность исходит из файла или из переменной (один элемент в каждой строке), и я не могу адаптировать его к моим потребностям

я не до конца понял, как передать список параллельно

Если я сохранить все команды завитка в списке и запустить его с параллельным -a?

С уважением,

ответ

1
parallel -j100 -k curl myurl/{} < s.txt 

Рассмотрим тратить час пешком через man parallel_tutorial. Ваша командная строка вас полюбит.

+0

Выполняется команда 100 cu4 – user217354

+0

Отпечатать опечатку. Он работает на 100 локонов за раз? Если так, то это будет ждать, когда все эти 100 закончится или он будет поддерживать 100 из них до конца? – user217354

+0

Рассмотрите возможность прохождения часа через man parallel_tutorial. Ваша командная строка вас полюбит. –

Смежные вопросы