2016-07-14 4 views
1

Как получить номера процессов многопоточного приложения? Я имею в виду, что я ищу скрипт bash, который после выполнения команды помещает номера процессов в список. Например:Поиск номеров процессов многопоточного приложения

#!/bin/bash 
./run_program -nt 4 
# find the list of PIDs 
+0

'pstree -p $ SOME_PID' – xxfelixxx

+0

@xxfelixxx' pstree -p $$ '' – 123

+0

pstree' показывает графическое представление. Я просто хочу PID (числа) – mahmood

ответ

2

Я хотел бы использовать pgrep для проверки процесса идентификаторов.

Если вы только глядя на ребенка PID текущего процесса, вы можете использовать -P вариант:

pgrep -P $$ 
1

Предполагая, что run_program создает такой же путь выполнения в списке pid ps.

ARRAY=($(ps -fe | grep run_program | grep -v grep | awk '{print $2}' ORS=' ')) 

и вы можете получить доступ к примеру

echo ${ARRAY[2]} 
Смежные вопросы