Короче говоря, я пытаюсь написать программу на Python, которая будет постоянно запускать команду kill [PID of iTunes но после некоторого тестирования с помощью команды ps aux | grep iTunes | egrep -v "grep|Helper" | awk '{print $2}' и PID iTunes меняются каждый раз, и я не могу найти образец для этого. Есть ли в нем закономерность или способ сделать так, чтобы он не увеличивался?

1 ответ1

0

Существует только один процесс, который будет иметь один и тот же PID каждый раз в любом сеансе или системе. То есть процесс init всегда будет иметь PID 1. Кроме этого, нет шаблона.

Если вы используете команду Homebrew brew install proctools она загрузит, соберет и установит pgrep .

Тогда вы можете использовать pgrep -f <process name> | awk '{print "kill -9 " $1}'

Я считаю, что другой вариант будет использовать pkill с именем процесса. В этом случае я не думаю, что вам нужно знать идентификатор процесса, просто имя процесса. pkill также будет установлен, если вы выполнили команду Homebrew, указанную выше.

Если вы не хотите ничего устанавливать, попробуйте запустить ps axf | grep <process name> | grep -v grep | awk '{print "kill -9 " $1}' | sh . Посмотрите, что он печатает в оболочке, чтобы увидеть, будет ли он убивать правильный процесс.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .