@TANK_IST

Как остановить команду запущенную в фоне через амперсенд?

На сервере стоит continuous integration. И при пуше в git CI выполняет команды.
Одна из них это php bin/console sockets:start &.
& использую для запуска в фоне.
И при новом push в git эта команда запускается во второй раз.
Как остановить предыдущую, чтобы в фоне работала только последняя?
  • Вопрос задан
  • 330 просмотров
Решения вопроса 1
saboteur_kiev
@saboteur_kiev Куратор тега Linux
software engineer
Убивайте предыдуший процесс через kill

Можно предусмотрительно в вашем php сразу после запуска создавать .pid файл с номером процесса, чтобы можно было по нему отследить запущен ли процесс.

В общем это задача любого configuration engineer junior
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
CityCat4
@CityCat4
//COPY01 EXEC PGM=IEBGENER
Можно через fg вызвать на терминал фоновую задачу.
Можно через kill пристрелить, если pid запомнен где-то
Ответ написан
Комментировать
sim3x
@sim3x
tldp.org/LDP/abs/html/x9644.html

The fg command switches a job running in the background into the foreground. The bg command restarts a suspended job, and runs it in the background. If no job number is specified, then the fg or bg command acts upon the currently running job.

или
ps -aux | grep php
kill -15 номер процесса
kill -9 номер процесса
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы