Получить значение количества активных потоков в процессе
Я пытаюсь получить количество потоков процесса в UNIX с помощью командной строки. Пройдя страницу руководства команды unix, я узнал следующую команду:
ps -o nlwp <pid>
возвращает количество потоков, созданных в процессе.
Всякий раз, когда я выполнял вышеуказанную команду в unix, она возвращала:
NLWP
7
Теперь я хочу пренебречь NLWP и пробелом до 7.
То есть меня просто интересует значение, так как я буду использовать его в скрипте, который я пишу для модульного тестирования?
Можно ли получить только значение и пренебречь всем (Заголовок NLWP, пробел)?
1 ответ
Вы всегда можете использовать --no-headers
вариант в ps
избавиться от заголовков.
В этом случае используйте awk
просто напечатать первое значение:
ps --no-headers -o nlwp <pid> | awk '{print $1}'
Или же tr
убрать пробелы:
ps --no-headers -o nlwp <pid> | tr -d ' '
Если --no-headers
не поддерживается в вашем ps
версия, любой из них делает это:
ps -o nlwp <pid> | awk 'END {print $1}'
ps -o nlwp <pid> | tail -1 | tr -d' '