У меня есть следующий простой сценарий удара. по некоторым причинам это всегда возвращает true.
#!/bin/bash
service=hhvm
status=($(ps -ef | grep -v grep | grep $service | wc -l))
if [[ $status -eq 0 ]]; then
echo "starting $service"
service hhvm start
else
echo "$service running"
fi
Заключительный сценарий, который работал. в чате
#!/bin/bash
service=hhvm
if ! (($(ps -ef | grep -v "grep"| grep "$service" | wc -l))) ; then
echo "starting $service"
service hhvm start
else
echo "$service is running"
fi
foo=3
if [[ $foo -eq 0 ]]; then # -eq: equal
echo "foo equals 0"
else
echo "foo is not equal to 0"
fi