Висновок без опцій
PS (process state) - стандартна утиліта всіх дистрибутивів Linux, яка використовується через консоль. Її основне призначення - відображення інформації про всі запущені процеси. Кількість і детально показуються відомостей залежить від встановлених опцій, які вибираються при безпосередній активації самої команди. Про опціях ми поговоримо трохи пізніше, а зараз давайте просто введемо ps
в «Терміналі» і натиснемо на Enter.
Як видно на скріншоті нижче, відобразилося всього рядка, серед яких знаходиться оболонка bash і сам процес розглядається команди.
Звичайно, тут може бути ще кілька пунктів, що залежить від кількості запущених програм користувача, проте в більшості випадків користувачів такий висновок не влаштовує, тому ми і пропонуємо перейти до вивчення додаткових опцій.
Виведення списку всіх процесів
Утиліта PS без вказівки спеціальних опцій не дозволяє отримати корисну інформацію, яка може стати в нагоді під час вивчення списку активних процесів, тому й важливо застосовувати аргументи. Перший з них відповідає за відображення абсолютно всіх поточних завдань, а рядок приймає вигляд ps -A
.
В результаті відобразиться величезна кількість рядків, з якими слід розібратися. Діляться відомості на декілька стовпців. PID відображає ідентифікаційний номер процесу і може використовуватися, наприклад, для швидкого завершення роботи цієї програми або перевірки дерева завдань. TTY - ім'я терміналу, де запущений поточний процес. TIME - час роботи, а CMD - назва команди завдання.
Додатково можна використовувати команду ps -e
, Щоб відобразити список усіх процесів, якщо попередній варіант вас не влаштовує.
Як видно, видача після активації опції -e вийшла точно така ж, як і при введенні аргументу -A.
Існує формат виведення BSD, що відповідає за відображення пов'язаних з користувачами процесів, а також відображає більш детальні відомості про роботу завдань, навантаженні їх на процесор і точне розташування. Для отримання таких відомостей слід використовувати ps au
.
На зазначеному нижче зображенні ви бачите, що кількість стовпців значно додалося. У підсумку до ознайомлення буде доступний повний список процесів з прив'язкою до облікового запису і відображенням місця розташування.
повноформатний лістинг
Розглянуті вище приклади дозволяли відобразити практично всі необхідні відомості, які можуть бути корисні починаючим користувачам. Однак іноді потрібно отримати більш детальний лістинг, наприклад, щоб визначити джерело виклику процесу. Тоді на допомогу прийде рядок такого виду: ps -ef
.
З'являться практично ті ж стовпчики, про які ми вже говорили раніше, але додатково з'явиться детальна розгортка про розташування і перший же пункт буде відповідати за джерело виклику завдання.
Відображення користувальницьких процесів
опція -x відповідає за відображення процесів, які були від'єднані від терміналу, тобто запущені особисто користувачем. Якщо ви хочете дізнатися, які саме завдання були відкриті від імені поточного облікового запису, в консолі досить буде ввести рядок ps -x
і натиснути на Enter.
Висновок буде максимально інформативний, але без додаткових відомостей. Однак ніщо не завадить задіяти і додаткові опції, наприклад, -eM
для показу контексту безпеки.
Якщо ж потрібно отримати інформацію про дані іншого користувача, змініть рядок на ps -fU soringpcrepair.com
, де soringpcrepair.com замініть на необхідне ім'я.
У результатах виведення зверніть увагу на перший стовпець. Ви не знайдете там інших власників крім зазначеного в команді до її активації.
Фільтр по root
У кожному сеансі Linux є окремий список завдань, які виконуються з правами root. Якщо потрібно відобразити тільки такі процеси, слід задати команду ps -U root -u root
і активувати її натисканням на клавішу Enter.
При використанні команди в точності повторює ту, що вище, висновок не буде містити рядки з джерелом запуску, оскільки заздалегідь відомо, що це root, а всі відомості показуються в максимально стислому призначеному для користувача вигляді. Тут ми пропонуємо задіяти згадані вище аргументи, щоб розширити інформацію.
Відображення групових завдань
Досвідчені користувачі знають, що деякі процеси належать до конкретної групи, тобто є головне завдання і її залежності, що формують загальне древо. При необхідності відображення тільки рядків, що потрапляють під цей критерій, задійте команду ps -fG 48
, де 48 - ідентифікатор групи (його можна замінити на назву батьківського процесу).
Відображення по PID
З наведених вище відомостей ви вже знаєте, що кожен процес має свій PID, тобто визначає його ідентифікатор. Якщо є бажання виконати пошук по конкретним PID, слід задіяти команду ps -fp 1178
, Замінивши число на необхідну. Є і критерій PPID. При визначенні такого формату рядок набуває вигляду ps -f --ppid тисячі сто п'ятьдесят чотири
, З відповідною зміною ідентифікатора на потрібний.
Це були всі основні приклади команди PS в Linux, про які ми хотіли поговорити в рамках сьогоднішньої статті. На жаль, обсягу одного керівництва не вистачить для того, щоб детально описати взаємодію з усіма доступними опціями і їх комбінаціями. Замість цього ми пропонуємо вивчити офіційну документацію команди, виконавши ps --help
, Щоб отримати ті підказки, які ви не знайшли вище. Додатково на нашому сайті є розгорнуті описи основних команд розглянутої операційної системи. Рекомендуємо початківцям користувачам вивчити їх, щоб швидше освоїтися в управлінні консоллю Лінукс.
Читайте також:
Часто використовувані команди в «Терміналі» Linux
команда ln / find / ls / grep / PWD в Linux