2 голоса
 
1555 просмотров
8.02.2017 / 23:14  aNNiMON

wget и последовательная загрузка

Есть такой набор команд, который должен последовательно скачать три файла:
wget -O file1 link1 ; wget -O file 2 link2 ; wget -O file3 link3

Если файлы небольшие, то скачивание действительно происходит последовательно.

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

Действительно ли это фоновый режим и как можно его принудительно отключить?
9.02.2017 / 08:37  uFooh
А почему не разделишь команды &&?
Ответы
 
1 голос
 
# 11.02.2017 / 23:25  kalterfx
wget как будто форкается, но в мануале я не сумел ничего найти по ключевому слову 'fork'. Упомянутые && от форка тоже не уберегут, потому что, грубо говоря, это те же самые ;, но с условием.

Я предполагаю, что ты не оборачиваешь link1 link2 … в одинарные кавычки. В ссылках могут встречаться символы &, которые в bash используются для запуска процесса "в фон".

20170212012452-2541.png (10.04 кб.)
12.02.2017 / 01:09  aNNiMON
Да, в ссылке есть амперсанд, кажется, это оно!
 
0 голосов
 
# 14.02.2017 / 13:26  Ксакеп
Если файлы небольшиеНасколько небольшие?
Изм. Ксакеп от 14.02.2017 / 13:26
14.02.2017 / 14:08  aNNiMON
В пределах мегабайта. Но предположение оказалось не верно, дело как раз в амперсанде в ссылке.
 
0 голосов
 
# 9.02.2017 / 10:24  HoldFast
wget -O file1 link1 && wget -O file2 link2 && wget -O file3 link3
разве не прокатывает?
 
0 голосов
 
# 8.02.2017 / 23:49  Koenig
если только скрипт писать и проверять feof
Всего: 4

Реклама

Мы в соцсетях

tw tg yt gt