Форум программистов, компьютерный форум, киберфорум
Linux
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
2 / 2 / 0
Регистрация: 30.08.2012
Сообщений: 151
1

Как в cron запретить одновременное выполнение двух заданий?

20.12.2013, 21:58. Показов 2384. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
(Если тему не там создал, то перенесите)

Есть скрипт, он выполняется каждые 6 минут ежедневно.
Код
*/6 * * * * One.pl
Его останавливает скрипт через 5 минут ежедневно.
Код
*/11 * * * * kill_One.pl
-----------------------------------------------------------------------
Есть второй скрипт, он запускается 1 раз в день в 01:00
Код
0 01 * * * Two.pl
Его останавливает скрипт через 10 минут раз в день
Код
01:10 10 01 * * * kill_Two.pl

Мне нужно что бы когда работал скрипт Two (1 раз в день, продолжительность 10 минут, запуск 01:00),не запускался скрипт One (который каждые 5 минут грузится).

Я не продвинутый юзер в администратировании.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.12.2013, 21:58
Ответы с готовыми решениями:

Одновременное выполнение двух заданий?
Добрый вечер, Подскажите пожалуйста, как можно решить данную задачу: Для лучшего понимания...

Возможно ли: выполнение подпрограммы в отдельном процессе, одновременное выполнение двух подпрограмм?
Всех приветствую :handshake: Пример @echo off call :PROG1 call :PROG2 exit /b :PROG1

Запретить одновременное нажатие двух кнопок
Есть id: but1 и but2. onClick() по ним открывает разные фрагменты. Но если зажать 2 кнопки...

Одновременное выполнение двух операторов
Здравствуйте, подскажите, как сделать так чтобы два или более операторов выполнялись не...

6
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
20.12.2013, 23:59 2
Цитата Сообщение от tipahead Посмотреть сообщение
Его останавливает скрипт через 10 минут раз в день
синтаксис неправильный

Добавлено через 1 минуту
Цитата Сообщение от tipahead Посмотреть сообщение
Мне нужно что бы когда работал скрипт Two (1 раз в день, продолжительность 10 минут, запуск 01:00),не запускался скрипт One (который каждые 5 минут грузится).
через pid-файлы такое делают обычно (сами скрипты меняют)

пример выполнения с условием, можешь применить аналогичное
Код
* * * * * if [ -e /etc/passwd ]; then head -1 /etc/passwd > /tmp/file.txt; fi
0
2 / 2 / 0
Регистрация: 30.08.2012
Сообщений: 151
21.12.2013, 00:38  [ТС] 3
Может кто объяснить как мне реализовать ?
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
21.12.2013, 00:44 4
через ps анализируй в условии наличие скрипта Two
только тестируй не в cron'е, а просто в командной строке
когда будет готово, вставишь в crontab
0
2 / 2 / 0
Регистрация: 30.08.2012
Сообщений: 151
21.12.2013, 03:05  [ТС] 5
мне бы первый запустить и убить так как я хочу, по фиг на второй
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
21.12.2013, 05:37 6
Цитата Сообщение от tipahead Посмотреть сообщение
мне бы первый запустить и убить так как я хочу
в cron'е лучше делать один запуск обёртки
а цикл и остановки делать в обёртке

Bash
1
2
3
4
5
6
while true; do
    sleep 6m
    One.pl &
    sleep 5m
    killall One.pl
done
потому что эти действия по остановке и запуску можно связать, тогда как в cron'е они действуют независимо, и он может выключать скрипт, который не работает (либо там может время съезжать)
0
2 / 2 / 0
Регистрация: 30.08.2012
Сообщений: 151
21.12.2013, 21:46  [ТС] 7
1)Если я его помещу в крон, то какое мне время выполнения этого скрипта ставить? Каждую минуту? Повторно запускаться не будет? ведь в целом он 11 минут работать будет. (т.е крон 11 раз запустит?).

*/1 * * * * 1.sh

1.sh
Bash
1
2
3
4
5
6
while true; do
    sleep 6m
    One.pl &
    sleep 5m
    killall One.pl
done
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
2)Как бы второй скрипт реализовать тоже, который бы запускался раз в день на десять минут.

*/1 * * * * 2.sh

2.sh
Bash
1
2
3
4
5
6
while true; do
    sleep 1380m  --- 23 часа
    Two.pl &
    sleep 10m
    killall Two.pl
done

3) Мне сказали что самый первый запуск через крон - будут запущены эти скрипты одновременно это так?
4) По поводу того что бы они вообще не могли вместе работать

вот этот ваш код * * * * * if [ -e /etc/passwd ]; then head -1 /etc/passwd > /tmp/file.txt; fi
Его тоже в крон нужно? Можно подробнее каким магическим способом он будет не давать запускаться?

5)Это реально такая сложная задача? Неужели администраторы и программисты не могут помочь.
Сам я ни первым, ни вторым не являюсь.
0
21.12.2013, 21:46
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.12.2013, 21:46
Помогаю со студенческими работами здесь

Одновременное выполнение двух функций
Как мне заставить картинку и передвигаться и менять размер,а то одновременно выполнение этих...

Одновременное выполнение двух классов
Это клиентская программа для анонимного сетевого чата программа состоит из main и еще 4х классов ...

Одновременное выполнение двух функций
Как запустить эти две функции одновременно? r = sr.Recognizer() with sr.Microphone() as source:...

Одновременное (а не поочередное) выполнение двух циклов
#include <iostream> #include <cstring> #include <Windows.h> using namespace std; int main()...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru