LinuxForum.Fans
Тема

Исправить ошибки в скрипте

Автор: UserQ 5 сообщений 1831 просмотров
#88290

Написал скрипт для проверки запущен ли процесс, если нет то запуск его

text

#!/bin/bash
a=./someproc
b="ps ax | grep 3proxy | awk '{print ($6)}'"
if {$b -eq $a}
then
:
else
/path/to/prog/./someprog
fi

у меня ругается на то что ps: command not found

Как это исправить не нашел ответа.
Может есть альтернативные варианты как проверять запущен ли процесс.

#88295

Как вариант, использовать pidof.
Или измените скрипт

text

...
b=`ps ax | grep 3proxy | awk '{print ($6)}'`
...

либо

text

...
b=$(ps ax | grep 3proxy | awk '{print ($6)}')
...

Однако, сама конструкция скрипта не правильна.

#88298

Как вариант

text

#!/bin/sh
ps ax | grep 3proxy | grep -v grep > /dev/null || /path/to/prog/./someprog

или

text

#!/bin/sh
pidof 3proxy > /dev/null || /path/to/prog/./someprog
#88312

Оффтоп:

Чтобы в конструкции ps ax | grep 3dproxy сама команда grep не попадала в вывод надо вводить так:
ps ax | grep [3]proxy

#88320

Спасибо.
С этим справляется grep -v grep

Войдите или зарегистрируйтесь, чтобы ответить.