Простейший crontab-скрипт

Частые вопросы возникающие при работе с ботами. Загляните сюда перед созданием новой темы.

Модератор: Модераторы

Простейший crontab-скрипт

Сообщение Kein » 16 ноя 2008 18:18

BASH: [ Скачать ] [ Скрыть ]
#!/bin/sh

# Crontab script for Eggdrop

###############################################################
# НАСТРОЙКА ПЕРЕМЕННЫХ
###############################################################

# Директория, куда установлен бот
EGGPATH=/home/user/bots/eggdrop

# Имя pid-файла (указывается в конфиге)
EGGPIDF=pid.eggdrop

# Имя исполняемого файла (обычно eggdrop)
EGGPROG=eggdrop

# Параметры, какие будет передавать скрипт исп. файлу при запуске (-n и т.п.)
EGGARGS=""
#EGGARGS="-n"

###############################################################
#  ТЕЛО СКРИПТА (тут менять ничего не надо)
###############################################################

PATH=/bin:/usr/bin:/usr/local/bin

EGGPID=

cd $EGGPATH

if [ -f $EGGPIDF ]
then
        EGGPID=`cat $EGGPIDF`
        if [ `ps auwx | grep $EGGPROG | grep $EGGPID | grep -v -c grep` = 1 ]
        then
                exit   
        fi
        rm -f $EGGPIDF
fi

./$EGGPROG $EGGARGS
 


Для Suzi-ботов, в качестве последней строки можно указать нечто вроде:
LANG=ru_RU.CP1251 LC_TIME=en_US ./$EGGPROG $EGGARGS
 


Ну вот и все - сохраняем файл с именем eggchk в root-директории бота (там же, где и eggdrop.conf) и ставим на него chmod +x (chmod +x eggchk). Затем, добавляем в кронтаб (crontab -e) строку вида:
0,10,20,30,40,50 * * * *   /home/user/bots/eggdrop/eggchk

и сохраняем крон.

Теперь каждые десять минут, крон-скрипт будет проверять существование процесса eggdrop с определенным пидом, и, если такового не обнаружит - запустит бота.
Аватара пользователя
Kein
 
Сообщения: 4
Зарегистрирован: 22 авг 2008 00:55
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Вернуться в FAQ + HowTo

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron