Определение PID задачи

Я должен смочь выполнить или не запустить скрипт на основе того, работает ли другой процесс. Процесс является сторонним программным обеспечением обработки изображений под названием DenseCap. Есть ли путь к wait на задаче, которой Вы не знаете PID, но просто название? Когда я работаю ps -ef, это - процесс:

usr        4638   4536 93 14:57 pts/8    00:00:05 /home/usr/torch/install/bin/lu

Я не должен запускать определенный скрипт, когда это работает, но что определенный сценарий должен работать, когда DenseCap не. Я не знаю, как получить PID для него. В основном существует один сценарий, который я имею, который выполняет DenseCap и другой сценарий, который я имею, который выполняет определенный процесс, который действительно не должен работать, в то время как DenseCap работает. Существует один сценарий, который выполняет их обоих одновременно. Я потерян относительно того, что сделать. Если необходимо видеть код, я могу отправить его.

0
задан 25 October 2017 в 12:00

2 ответа

Ну, в целом команда pgrep была бы полезна, поскольку вы знаете название рассматриваемой команды.

pgrep -l <name_of_command>

перечислил бы и имя, и PID, чтобы вы могли использовать это в своем сценарии.

См .: man pgrep

2
ответ дан 2 November 2019 в 01:20

Другой, который Вы могли использовать, является следующим использованием команды ps с опцией показа pid и cmd. pid в этом порядке была бы первая часть строки.

ps -eo pid,cmd | grep <name> | grep -v grep

Единственная причина мне нравится использовать этого, состоит в том в случае, если я должен найти команду переключателем, который команда выполняет как туннель, который использует что-то как CfND, но у меня могло бы быть дополнительное ssh выполнение сессий.

Пример:

terrance@terrance-ubuntu:~$ ps -eo pid,cmd | grep CfND | grep -v grep
14908 ssh -CfND 4242 terrance@myvpntunnel.com

Надеюсь, это поможет!

1
ответ дан 2 November 2019 в 01:20

Другие вопросы по тегам:

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