Я хочу создать bash-скрипт, который будет проверять, запущен ли foo, и запускать его, если это не так.
Вот код:
#!/usr/bin/env bash
function run {
if ! pgrep $1;
then
$@
fi
}
run foo
После выполненияскрипт запускает другой экземпляр foo, несмотря на то, что foo уже запущен.
pgrep foo возвращает номер процесса, чтобы я мог сначала заставить скрипт убить его, а затем снова запустить foo, но я хочу знать, можно ли это сделать, как описанонаверху.Что мне здесь не хватает?