после оператора kill сценарий печатает «Завершено», и следующие строки никогда не выполняются:
#!/bin/bash
kill -9 `ps -ef | grep MailSender | grep -v grep | awk '{print $2}'`
echo starting
./MailSender
Я даже пытался добавить set +e
в начале, но все равно выходит после kill.
Включает ли имя вашего скрипта MailSender
? Если да, попробуйте изменить его. Также используйте pkill -9
, будет чище:
#!/bin/bash
pkill -9 MailSender
echo starting
./MailSender
pkill убьет все, что содержит MailSender, возможно, ваш скрипт содержит MailSender в своем имени. Измени это.