Показать рабочие процессы с именем (именами) файла?

Насколько я знаю, что это - просто цепочка замены. Сначала это удаляет весь ведущий пробел через s/^[[:space:]]// и это идет дальше для применения s/[[:space:]]$// удалить весь запаздывающий пробел.

11
01.12.2014, 17:52
4 ответа

ps aux | grep <pid> не команда оболочки. Нотация <pid> общая конвенция состоит в том, чтобы означать, “помещает PID там”. Например, если PID является 1234, Вы работали ps aux | grep 1234. Это не очень полезная команда, Вы могли бы также работать ps u 1234.

Ваш вопрос не очень ясен. Под чем Вы подразумеваете “с именами файлов”? Если Вы хотите видеть, какой исполняемый файл процесс 1234 выполняет:

ls -l /proc/1234/exe

Если Вы хотите видеть, какие файлы, которые процесс имеет открытый:

ls -l /proc/1234/fd

Если Вы хотите видеть полную командную строку с аргументами:

tr '\0' '\n' </proc/1234/cmdline

Если Вы предпочитаете использовать команды, lsof -p1234 шоу все файлы процесс имеют открытый. ps uww 1234 показывает различные сведения о процессе 1234 включая полную командную строку.

13
27.01.2020, 19:57

попытайтесь выполнить следующее:

ps -ef
5
27.01.2020, 19:57

В первую очередь, ps aux | grep <PID> полезно, когда Вы хотите показать детали для определенного процесса чей PID (Идентификатор процесса) представлен <PID>.

Например (ps aux | grep 'firefox\|USER' средства печатают только строки, которые содержат firefoxили USER):

ps aux | grep 'firefox\|USER'
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
terdon  9021  2.5 11.8 1950888 970832 ?      Sl   Apr03 108:41 /opt/firefox/firefox

Так, PID для моего firefoxэкземпляр 9021. Так, для использования команды, Вы пытаетесь работать, я заменил бы <PID> с 9021:

ps aux | grep 9021
terdon  9021  2.5 11.5 1948776 942640 ?      Sl   Apr03 109:03 /opt/firefox/firefox

Теперь, я не уверен, что Вы подразумеваете "под дисплеем который файлы, выполняющие эти процессы". Если Вы имеете в виду дисплей, который регистрирует эти процессы, используют, ps aux один способ сделать так. Скажите, что я открыл файл /usr/share/doc/nano/faq.html использование этой команды:

 firefox /usr/share/doc/nano/faq.html 

Я видел который файл firefox открыл использование ps :

ps aux | grep firefox
terdon   31763 18.7  1.0 682916 84352 pts/10   Sl+  17:10   0:02 firefox /usr/share/doc/nano/faq.html

Открытый файл показывается, поскольку один из аргументов передал Firefox. Обратите внимание, что PID отличается (это теперь 31763 вместо 9021) это вызвано тем, что каждая запускающая программа имеет свой собственный уникальный PID.


Другая полезная команда top. Если Вы выполняете его с -c переключатель, который это покажет аргументам, передал команде, и с -u <your user> это только покажет процессы, запущенные Вашим именем пользователя (замена <your user> с Вашим фактическим именем пользователя):

top -c -u terdon

Это - вывод на моей локальной машине (пользователь terdon только выполняет два процесса):

top - 17:14:41 up 3 days, 49 min, 14 users,  load average: 0.48, 0.54, 0.55
Tasks: 228 total,   1 running, 226 sleeping,   0 stopped,   1 zombie
%Cpu(s):  7.1 us,  5.5 sy,  0.0 ni, 86.5 id,  0.0 wa,  0.0 hi,  0.9 si,  0.0 st
KiB Mem:   8187940 total,  8007220 used,   180720 free,   349264 buffers
KiB Swap:  8191996 total,     5556 used,  8186440 free,  4173004 cached

  PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+  COMMAND                                                       
31573 terdon    20   0 24900 5576 1684 S   0.0  0.1   0:00.20 bash                                                          
31763 terdon    20   0  666m  77m  28m S   0.0  1.0   0:02.39 firefox /usr/share/doc/nano/faq.html                          

Для объяснения информации, показанной top, см. мой ответ на связанный вопрос на SU.

3
27.01.2020, 19:57

некоторые символы под оболочкой для особых целей как <>? ";...

grep PID не полезен, потому что PID является идентификатором процесса и grep, найдет подобным числовой...

0
27.01.2020, 19:57

Теги

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