LINUX.ORG.RU

Закрыть файл из другого процесса

 file descriptor, , закрыть файл


0

1

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

Интересует:

1) как закрыть файл, чтоб программа выдала ошибку и продолжила работу

2) существуют ли способы управления wget-ом в рантайме. например, послать ему сигнал, чтобы он пропустил текущую закачку и не убился

Насколько я понял вы запустили скачивание командой

wget -i <file_list>

Если вы не хотите перезапускать wget заново, исключив из файла с сылка ми на закачку не нужную можно поступить так, временно отключить соединение с internet, сделав несколько попыток докачать файл wget выдаст сообщение о недоступности файла и перейдёт к следующей ссылке, в этот момент восстановит подключение к internet, но это возможно, если у вас не специфическое подключение, когда нужно дозваниваться до провайдера.

kostik87 ★★★★★
()
Ответ на: комментарий от trupiko

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

ну а по поводу вариант или не вариант, думать надо раньше того, как делать.

kostik87 ★★★★★
()

Добавь правило в айпитэйблс вместо отключения интернет, вгет точно также отвалится.

imul ★★★★★
()
Ответ на: комментарий от imul

Хотелось бы все-таки сделать это через файловый дескриптор... Может есть какая-нибудь программа?

trupiko
() автор топика
Ответ на: комментарий от anonymous

дешевле убить и заново запустить

С таким подходом (при Cталине) запустили человека в космос, кстати…

anonymous
()
Ответ на: комментарий от anonymous

В школьную программу включили Linux? Судя по тому, что никто еще не предложил ничего стоящего, думаю, что нет.

trupiko
() автор топика

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

KivApple ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.