Wget+cron+bash выключить вовремя (Ну типо есть время когда можно качать, его выключить вовремя)

На самом деле это единственный раздел про unix на этом форуме

Модераторы: /dev/random, Модераторы разделов

asproot
Сообщения: 50
ОС: asp

Wget+cron+bash выключить вовремя

Сообщение asproot »

Все академические примеры говорят о том как включть закачку.
А вот тут проблема как её прервать по часам пользуясь wget+cron+bash.
Есть несколько вариантов в crone процесс wget kill-ять, в wgete прописать ограничения на сеанс.
Но может кто знает более изьящное решение?
А коллеги?
Спасибо сказали:
Аватара пользователя
landgraf
Сообщения: 2142
Статус: *бунту ненавистник
ОС: linux

Re: Wget+cron+bash выключить вовремя

Сообщение landgraf »

asproot
а чем kill не угодил? просто программе отправлен сигнал "закругляйся" - чего не изящного то?
Спасибо сказали:
Аватара пользователя
blackst0ne
Сообщения: 528
Статус:
ОС: Ubuntu 9.04

Re: Wget+cron+bash выключить вовремя

Сообщение blackst0ne »

Отправить SIGTERM wget'у. По умолчанию kill отправляет именно этот сигнал. Все очень изящно.
Администрация! Пожалуйста, добавьте птичку "решено", а также соответствующую кнопку на ajax'е в теме (подробнее здесь).
Спасибо сказали:
asproot
Сообщения: 50
ОС: asp

Re: Wget+cron+bash выключить вовремя

Сообщение asproot »

А не нравится мне идея с килянием кроном, вот почему.
После киляния wgeta, придётся разобраться что там он успел выкачать, и скорректировать содержимое файла с URLs
А это на bash представляет некоторый гимарой, что совсем не изьящьно.
Спасибо сказали:
Аватара пользователя
landgraf
Сообщения: 2142
Статус: *бунту ненавистник
ОС: linux

Re: Wget+cron+bash выключить вовремя

Сообщение landgraf »

asproot
ну гапишите скрипт, который перед килом будет сохранять текущее состояние
Спасибо сказали:
asproot
Сообщения: 50
ОС: asp

Re: Wget+cron+bash выключить вовремя

Сообщение asproot »

landgraf писал(а):
27.02.2009 21:10
asproot
ну гапишите скрипт, который перед килом будет сохранять текущее состояние

А какая собсвенно разница до киляния или после, событие то уже типо произшло?
Нипонял...
Спасибо сказали:
asproot
Сообщения: 50
ОС: asp

Re: Wget+cron+bash выключить вовремя

Сообщение asproot »

Или речь идёт о сохранении состояния процесса Wget в текущий момент, с последующим его восстановлением?
А это вообще в данной ОС возможно?
Заинтриговал, про подробнее об этом пожалуйста.
Спасибо сказали:
Аватара пользователя
Amper13
Сообщения: 551
ОС: Fedora 26, CentOS 7

Re: Wget+cron+bash выключить вовремя

Сообщение Amper13 »

http://www.opennet.ru/base/dev/linux_shells.txt.html
Внимательно читать пункт 3 "3. Выполнение программ в фоновом режиме"
Надеюсь поможет.
Спасибо сказали:
Аватара пользователя
Folderx
Сообщения: 296
ОС: fedora, mandriva

Re: Wget+cron+bash выключить вовремя

Сообщение Folderx »

Код: Выделить всё

# MinRun:  run program after few minutes;
#          MinRun 5 kwrite;
MinRun() {
    local NMIN="$1" PROGRAM;

    shift;
    PROGRAM="$*";
    if [ -z "$DISPLAY" ]; then
        return 1;
    fi;
    echo "DISPLAY=:0.0 TERM=xterm $PROGRAM" | at now + "$NMIN" min;
    return 0;
}
Спасибо сказали:
Аватара пользователя
blackst0ne
Сообщения: 528
Статус:
ОС: Ubuntu 9.04

Re: Wget+cron+bash выключить вовремя

Сообщение blackst0ne »

asproot писал(а):
27.02.2009 18:47
А не нравится мне идея с килянием кроном, вот почему.
После киляния wgeta, придётся разобраться что там он успел выкачать, и скорректировать содержимое файла с URLs
А это на bash представляет некоторый гимарой, что совсем не изьящьно.

Может я чего не понял, но wget -c -i urlslist не станет выкачивать то, что уже было полностью выкачано, а пойдет дальше по списку.
Администрация! Пожалуйста, добавьте птичку "решено", а также соответствующую кнопку на ajax'е в теме (подробнее здесь).
Спасибо сказали:
asproot
Сообщения: 50
ОС: asp

Re: Wget+cron+bash выключить вовремя

Сообщение asproot »

Для Amper13
Благодарю за ссылку, очень интересно было почитать на русском языке про запуск в фоновой моде. Но ...
А кто сказал что процесс wget именно сохранится до следущего запуска, в чем принципиальная разница если его просто остановить в многозадачной ОС.
Ну попробую и так, может и есть разница. А про ньюансы вроде времени загрузки и потребления ОЗУ, при современном "старом железе", для задачь wget-а говорить некомильфо.

Для Folderx
Ну и что, этот скрипт делает полезного по теме топика, или это прозрачный намёк? Луче прямо скажи без намёков.
А то я тупой.

Для blackstOne
Понимаешь ли коллега, это файл URLs предполагается отдать редектировать юзерам, и папку DESTINACION то же с правами читать и удалять.
Как wget себя поведёт в таком экстриме фик его знает, вот хочется избавится от возможных глюков уже сейчас, тем более что это сейчас просто.
Спасибо сказали:
Аватара пользователя
blackst0ne
Сообщения: 528
Статус:
ОС: Ubuntu 9.04

Re: Wget+cron+bash выключить вовремя

Сообщение blackst0ne »

asproot
Слева под аватарами пользователей есть две ссылки: "Insert name" и "Quote". Используйте их, чтобы быстро вставить никнейм, или чтобы процитировать сообщение. =)
Администрация! Пожалуйста, добавьте птичку "решено", а также соответствующую кнопку на ajax'е в теме (подробнее здесь).
Спасибо сказали:
asproot
Сообщения: 50
ОС: asp

Re: Wget+cron+bash выключить вовремя

Сообщение asproot »

Давай я лучше буду прямым путём на бронбойном ASCII, а то эти копочки сегодня есть-а завтра нет.
Спасибо сказали:
Аватара пользователя
Amper13
Сообщения: 551
ОС: Fedora 26, CentOS 7

Re: Wget+cron+bash выключить вовремя

Сообщение Amper13 »

Для Amper13
Благодарю за ссылку, очень интересно было почитать на русском языке про запуск в фоновой моде. Но ...
А кто сказал что процесс wget именно сохранится до следущего запуска, в чем принципиальная разница если его просто остановить в многозадачной ОС.
Ну попробую и так, может и есть разница. А про ньюансы вроде времени загрузки и потребления ОЗУ, при современном "старом железе", для задачь wget-а говорить некомильфо.

Все таки невнимательно прочитали, или я не правильно понял ваш вопрос :)
Я собственно хотел указать на то что процесс не обязательно полностью убивать, можно приостановить его выполнение, а затем в нужный момент продолжить выполнение с того состояния в котором он был остановлен (так сказать нечто спящего режима для процесса). По ссылке описание этого есть в пункте 3, если такой вариант приемлем, то лучше почитать man kill, man signal, man fg.
А вообще если хотите получить более развёрнутый ответ, то следует более подробнее описать ситуацию, а то суть вопроса немного не ясна.
Спасибо сказали:
asproot
Сообщения: 50
ОС: asp

Re: Wget+cron+bash выключить вовремя

Сообщение asproot »

Amper13 писал(а):
28.02.2009 18:12
Для Amper13
Благодарю за ссылку, очень интересно было почитать на русском языке про запуск в фоновой моде. Но ...
А кто сказал что процесс wget именно сохранится до следущего запуска, в чем принципиальная разница если его просто остановить в многозадачной ОС.
Ну попробую и так, может и есть разница. А про ньюансы вроде времени загрузки и потребления ОЗУ, при современном "старом железе", для задачь wget-а говорить некомильфо.

Все таки невнимательно прочитали, или я не правильно понял ваш вопрос :)
Я собственно хотел указать на то что процесс не обязательно полностью убивать, можно приостановить его выполнение, а затем в нужный момент продолжить выполнение с того состояния в котором он был остановлен (так сказать нечто спящего режима для процесса). По ссылке описание этого есть в пункте 3, если такой вариант приемлем, то лучше почитать man kill, man signal, man fg.
А вообще если хотите получить более развёрнутый ответ, то следует более подробнее описать ситуацию, а то суть вопроса немного не ясна.

Уважаемый Amper13, я вас прекрасно понял - но нужно поробовать в реальной работе.
Может мне это и не понравится в некоторых тонкостях - всё доллжно быть изьящно.
А суть вопроса как корректоно обрубить Wget, что выбрать из монгих способов.
Спасибо сказали:
Аватара пользователя
Folderx
Сообщения: 296
ОС: fedora, mandriva

Re: Wget+cron+bash выключить вовремя

Сообщение Folderx »

(asproot) писал(а):Но может кто знает более изьящное решение?

Код: Выделить всё

MinRun 60 "killall wget";
Ctrl+D;


пример подключения функции, то есть она может быть и в скрипте, у меня то они так висят на подхвате

Код: Выделить всё

[guest@station ~]$ \
> MinRun() {
>     local NMIN="$1" PROGRAM;
>
>     shift;
>     PROGRAM="$*";
>     if [ -z "$DISPLAY" ]; then
>         return 1;
>     fi;
>     echo "DISPLAY=:0.0 TERM=xterm $PROGRAM" | at now + "$NMIN" min;
>     return 0;
> }
[guest@station ~]$
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Wget+cron+bash выключить вовремя

Сообщение drBatty »

asproot писал(а):
26.02.2009 20:56
А вот тут проблема как её прервать по часам пользуясь wget+cron+bash.
Есть несколько вариантов в crone процесс wget kill-ять, в wgete прописать ограничения на сеанс.
Но может кто знает более изьящное решение?

а почему нельзя качать по Nкбайт, после каждого блока проверяя - не пора-ли завязывать?
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали: