Привет, я пытаюсь проверить, запущен процесс, и если это так, перезапустите его. Но если это не так, начните. Сценарий запускается после того, как команда команд была выполнена удаленно с Windows-машины с использованием Plink. Затем я запускаю другую команду plink для запуска этого скрипта. Приложение на главной машине работает постоянно.Перезапустить процесс, если он запущен в Bash
SERVICE="./Snowflake.app/Contents/MacOS/Snowflake"
if pgrep "$SERVICE" >/dev/null 2>&1 ;
then
echo "$SERVICE is running"
pkill "$SERVICE"
else
/Applications/snowflake/run.sh
fi
Проблема здесь состоит в том, что если приложение открыто оно не закрыть его, но вместо этого открывает приложение во второй раз. Может ли кто-нибудь сказать мне, где я ошибаюсь?
Извините, что не работает, по-прежнему та же проблема – Eggfoot
О, извините, мне пришлось снова поставить pkill, да, вы правы, это глупо. – Eggfoot
На самом деле это не глупо *. Это безопасно против условий гонки .. :) – hek2mgl