Ответ
В Linux существует несколько стандартных утилит для просмотра списка процессов, каждая из которых лучше подходит для определенных задач.
1. ps — статический срез процессов
Команда ps (process status) показывает статичный снимок процессов на момент вызова. Самый распространенный вариант — ps aux.
a— показать процессы всех пользователей.u— показать подробную информацию (пользователь, %CPU, %MEM).x— показать процессы, не привязанные к терминалу (демоны).
ps aux | head -n 10 # Показать первые 10 строк вывода
2. top и htop — интерактивный мониторинг
Эти утилиты предоставляют интерактивный интерфейс, обновляемый в реальном времени. htop — это улучшенная версия top с цветным выводом, древовидным режимом и удобным управлением.
# Запустить интерактивный монитор (рекомендуется)
htop
3. pstree — иерархия процессов
Отображает процессы в виде дерева, что наглядно показывает их родительские связи. Полезно для отслеживания, какой процесс породил какой.
pstree
4. Программно в Python
Библиотека psutil — это мощный кросс-платформенный инструмент для получения системной информации, включая список процессов.
import psutil
# Итерация по всем процессам и получение их PID, имени и пользователя
for proc in psutil.process_iter(['pid', 'name', 'username']):
print(proc.info)