авторестартер

Модератор: Модераторы разделов

nagash
Сообщения: 4
ОС: Mandriva 2008

авторестартер

Сообщение nagash »

Понадобилось написать скриптик, который будет проверять наличие процесса в памяти по PID (файл с PID создает сам процесс)

Погуглил, получилось следующее:

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

#!/bin/sh

while (true)
do
un='ps --pid $(cat /home/user/ichatsrvd/ichatsrvd.pid) | wc -l'
if [ ${un} = "2" ]
then
echo "up"
else
sleep 20m
/home/user/ichatsrvd/ichatsrvd
fi
done


В результате:

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

./autorestart.sh: line 6: [: too many arguments


Помогите пожалуйста.
Как такое обойти?
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5456
ОС: Gentoo

Re: авторестартер

Сообщение /dev/random »

)))
s/'/`/g
Спасибо сказали:
Аватара пользователя
Subj
Сообщения: 151
Статус: Useful
ОС: win

Re: авторестартер

Сообщение Subj »

Я так думаю должно быть
un=$(ps --pid $(cat /home/user/ichatsrvd/ichatsrvd.pid) | wc -l)
или
un=`ps --pid $(cat /home/user/ichatsrvd/ichatsrvd.pid) | wc -l`

if [ $un == "2" ]
Building better software with Ada
Спасибо сказали:
nagash
Сообщения: 4
ОС: Mandriva 2008

Re: авторестартер

Сообщение nagash »

/dev/random писал(а):
04.11.2008 02:56
)))
s/'/`/g

это специальные шаманские символы?)

Subj писал(а):
04.11.2008 12:24
Я так думаю должно быть
un=$(ps --pid $(cat /home/user/ichatsrvd/ichatsrvd.pid) | wc -l)
или
un=`ps --pid $(cat /home/user/ichatsrvd/ichatsrvd.pid) | wc -l`

if [ $un == "2" ]

спасибо, первый вариант помог
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5456
ОС: Gentoo

Re: авторестартер

Сообщение /dev/random »

nagash писал(а):
05.11.2008 06:34
/dev/random писал(а):
04.11.2008 02:56
)))
s/'/`/g

это специальные шаманские символы?)

Это значит заменить везде ' на `. Собственно, второй вариант из предложенных Subj
Спасибо сказали:
Аватара пользователя
Frank
Сообщения: 1059
ОС: Ubuntu, Debian

Re: авторестартер

Сообщение Frank »

Мэээ... sudo apt-get install monit && man monit
не? ой, мандрива... ну, yum тогда :)
Изображение
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4471
Статус: GNU generation
ОС: Debian GNU/Linux

Re: авторестартер

Сообщение Rootlexx »

Frank писал(а):
05.11.2008 19:21
Мэээ... sudo apt-get install monit && man monit
не? ой, мандрива... ну, yum тогда

Yum в Mandriva?
Если хотелось блеснуть знаниями, написали бы просто «Установите «monit»». В Mandriva urpm, кстати, давно уже как. И Yum там вроде не было.
Спасибо сказали: