У меня есть настройка и cron, чтобы проверить, занят ли порт или свободен, и если он свободен, он отправляет и отправляет электронное письмо, а затем запускает службу golang api
отправка почты работает правильно, но сервер api не запускается
вот мой файл crontab
*/2 * * * * /home/ubuntu/sh/projectrun.sh
Он запускает файл projectrun.sh каждые 2 минуты, следующий мой код в этом файле sh
#!/bin/bash
lsof -i :8080 | grep LISTEN || echo "Not listening" | curl "http://mysiteurl.com/serverlog/?s=cron"
lsof -i :8080 | grep LISTEN || echo "Not listening" | tmux new-session -d -s bkapi3_session 'bkapi'
первая строка выполняется правильно, так как я регулярно получаю почту, но вторая команда не работает, она работает, если я запускаю эту команду непосредственно с консоли, например
lsof -i :8080 | grep LISTEN || echo "Not listening" | tmux new-session -d -s bkapi3_session 'bkapi'
Не уверен, в чем проблема и как ее решить
Попробуйте с полным путем sh
лайк -
*/2 * * * * /bin/sh /home/ubuntu/sh/projectrun.sh