Как посмотреть java процессы на linux

Список процессов Java

Как я могу перечислить все процессы Java в bash? Мне нужна командная строка. Я знаю, что есть команда, ps но не знаю, какие параметры мне нужно использовать.

и посмотри, как у тебя дела

Последняя версия Java поставляется с инструментом состояния процесса виртуальной машины Java «jps»

очень полезно. Выводит только pid и квалифицированное имя основного класса:

Вы также можете использовать одну команду pgrep (не требует использования каналов и нескольких команд):

Пример:

jcmd позволяет отправлять запросы диагностических команд на работающую виртуальную машину Java (JVM).

Для лучшего формата вывода проверьте эту команду:

Если я хочу просто перечислить java-процессы, используйте:

(кстати, этот пример не самый эффективный, но его легко запомнить);)

вы можете передать указанное выше другим командам, например:

Когда я хочу узнать, выполняется ли определенный класс Java, я использую следующую командную строку:

jps & jcmd не показывал мне никаких результатов, когда я пробовал использовать openjdk-1.8 в redhat linux. Но даже если он это сделал, он показывает только процессы под текущим пользователем, что не работает в моем случае. В итоге я использовал ps | grep, но путь к классам для некоторых java-приложений может быть очень длинным, что делает результаты неразборчивыми, поэтому я использовал sed для его удаления. Это все еще немного грубо, но удаляет все, кроме: PID, User, java-class / jar, args.

Результаты выглядят примерно так:

Альтернативой в Windows для перечисления всех процессов является:

Но это потребует некоторого анализа, чтобы сделать его более разборчивым.

Источник

Как составить список запущенных процессов в Linux

Каждое приложение, которое вы используете, или команда, которую вы запускаете в своей системе Linux, создает процесс или задачу. Как системный администратор, вам нужно будет управлять процессами для обеспечения оптимальной производительности системы.

В этом руководстве мы рассмотрим различные команды Linux, которые вы можете использовать для составления списка текущих запущенных процессов и управления ими.

Процессы в Linux

Процессы в Linux запускаются каждый раз, когда вы запускаете приложение или выполняете команду. В то время как каждая команда создает один процесс, приложения создают и запускают несколько процессов для разных задач.

По умолчанию каждый новый процесс запускается как foreground процесс. Это означает, что он должен завершиться, прежде чем можно будет начать новый процесс. Запущенные процессы в background позволяет одновременно выполнять другие задачи.

Примечание: Узнайте больше о завершении процессов Linux в нашем руководстве по уничтожению процессов в Linux.

Список запущенных процессов в Linux

Список запущенных процессов в Linux с помощью команды ps

В ps Команда Linux создает снимок запущенных в данный момент процессов. В отличие от других команд в этом списке, ps представляет вывод в виде статического списка, не обновляемого в реальном времени.

В ps команда использует следующий синтаксис:

Часто используемый ps параметры команды включают:

Примечание: Ознакомьтесь с полным списком ps параметры команды с помощью man ps.

Запуск ps команда без каких-либо параметров дает результат, подобный следующему:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

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

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Новые категории расширенного вывода включают:

Чтобы отобразить запущенные процессы в иерархическом виде, введите:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Отфильтруйте список процессов по пользователю с помощью:

Например, отображение списка процессов, запущенных пользователем с именем phoenixnap:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Список запущенных процессов в Linux с помощью команды top

В top команда отображает список запущенных процессов в порядке уменьшения загрузки ЦП. Это означает, что наиболее ресурсоемкие процессы появляются вверху списка:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Выход top команды обновляются в реальном времени с трехсекундной частотой обновления по умолчанию. В top Выходные данные команды содержат следующие категории:

В то время как top команда запущена, используйте следующие параметры для взаимодействия с ней или изменения формата вывода:

Примечание: Варианты взаимодействия с top команда чувствительна к регистру. Убедитесь, что вы сначала отключили Caps Lock.

Список запущенных процессов в Linux с помощью команды htop

В htop команда предлагает тот же результат, что и top команда, но в более легком для понимания и удобном для пользователя виде.

Поскольку большинство дистрибутивов Linux не включают эту команду, установите ее с помощью:

С помощью htop команда предоставляет следующий вывод:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Используйте следующие клавиши для взаимодействия с htop команда:

Список запущенных процессов в Linux с помощью команды atop

В atop команда обеспечивает более полный обзор запущенных процессов по сравнению с Топ команда. Начните с установки atop команда с:

В atop команда создает вывод, похожий на:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Раздел заголовка выходных данных команды предоставляет обзор системных ресурсов, включая статистику, связанную с процессами и производительностью, а также использование памяти, диска и сети.

В нижнем разделе перечислены запущенные в данный момент процессы и содержатся следующие категории:

С помощью atop команда со следующими параметрами изменяет формат вывода:

Используйте следующие флаги для взаимодействия с atop команда:

Найдите идентификаторы процессов с помощью команды pgrep

С помощью pgrep команда позволяет искать конкретный процесс. В pgrep команда использует следующий синтаксис:

Например, используйте следующую команду для поиска Firefox процесс:

В выводе команды указан PID процесса:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Используя этот PID с ps команда позволяет получить больше информации о процессе. В этом примере использование PID 1439 предоставляет информацию о Firefox процесс:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Используйте доступные параметры команды, чтобы настроить вывод и поведение команды.

Источник

Список процессов Java

и посмотрите, как вы попадаете на

Недавняя Java-версия оснащена инструментом “jps” для процесса обработки виртуальной машины Java

является наиболее полезным. Печатает только pid и квалифицированное имя основного класса:

Вы можете использовать одиночную команду pgrep (не требует использования труб и нескольких команд):

Начиная с Java 7, самый простой способ и меньше подверженности ошибкам – просто использовать команду jcmd , которая является частью JDK, чтобы она работала так же на всех ОС.

Пример:

jcmd позволяет отправлять запросы диагностической команды на запущенную Java Виртуальная машина (JVM).

Если я хочу просто перечислить java-процессы, используйте:

(Кстати, этот пример не эффективен, но просто запоминается);)

вы можете передать вышеуказанные команды другим командам, например:

Когда я хочу узнать, выполняется ли какой-либо Java-класс, я использую следующую командную строку:

С точки зрения операционной системы имя команды процесса “java”. Опция “ww” расширяет максимальные символы colum, поэтому можно grep FQN связанного класса.

Я знаю, это кажется ужасным, и не переносимым, и даже плохо реализованным, я согласен. Но поскольку Java фактически работает в VM, по какой-то абсурдной причине, которую я не могу понять после более чем 15 лет работы JDK, почему невозможно увидеть вещи вне пространства JVM, это действительно смешно с вами думаю об этом. Вы можете делать все остальное, даже fork и join дочерние процессы (это был ужасный способ многозадачности, когда мир не знал о потоках или pthreads, что, черт возьми, что происходит с Java. ).

Это даст огромную дискуссию, которую я знаю, но в любом случае есть очень хороший API, который я уже использовал в своих проектах, и он достаточно стабилен (это OSS, поэтому вам все равно нужно подчеркнуть каждую используемую вами версию, прежде чем доверять API ): https://github.com/jezhumble/javasysmon

jps и jcmd не показывали мне никаких результатов, когда я пробовал это, используя openjdk-1.8 на redhat linux. Но даже если бы это было сделано, это показывает только процессы под текущим пользователем, которые не работают в моем случае. Использование ps | grep – это то, что я закончил, но путь класса для некоторых приложений Java может быть чрезвычайно длинным, что делает результаты неразборчивыми, поэтому я использовал sed для его удаления. Это немного грубо, но удаляет все, кроме: PID, User, java-class/jar, args.

Результаты выглядят примерно так:

Альтернативой для окон для отображения всех процессов является:

Но для этого потребуется разбор, чтобы сделать его более понятным.

Источник

Список процессов Linux

На сайте уже есть несколько статей про процессы Linux, в которых подробно описано как ими управлять или как завершить один или группу процессов, но это еще не все. Чтобы правильно управлять процессами и ориентироваться в них вам нужно научиться анализировать список процессов Linux, понимать что значит каждый пункт и зачем он нужен.

В этой статье мы подробно рассмотрим как посмотреть список процессов различными способами, разберем какими бывают процессы, почему так происходит и что с этим делать.

Список процессов в Linux

Я не буду подробно рассказывать про каждую команду, которую можно применять для просмотра списка запущенных процессов, вместо этого мы пройдёмся по основным утилитам для решения этой задачи, рассмотрим как посмотреть список потоков процесса, вывести процессы, которые выполняются на определённом ядре, а также как найти скрытые процессы. Но сначала надо разобраться с терминами.

1. Утилита ps

Самый простой способ посмотреть список процессов, запущенных в текущей командой оболочке, использовать команду ps без параметров:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Вот значение основных колонок в выводе утилиты:

Чтобы посмотреть список процессов в виде дерева, и понимать какой процесс имеет какие дочерние процессы, выполните команду:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Для просмотра списка процессов с потоками используйте опцию -L:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Здесь появятся ещё две дополнительных колонки:

Чтобы посмотреть список процессов определенного пользователя, например, sergiy используйте опцию -u:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Теперь давайте перейдём к другим, более интересным, интерактивным утилитам.

2. Утилита top

Утилита top не поставляется вместе с системой, поэтому вам придется её установить. Для этого в Ubuntu выполните:

sudo apt install top

Программа позволяет интерактивно просматривать список запущенных процессов Linux. Чтобы вывести список процессов Linux выполните команду:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Колонки, которые выводит программа очень похожи на ps:

Для того чтобы сделать вывод программы цветным, нажмите Z:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Чтобы вывести дерево процессов Linux нажмите сочетание клавиш Shift+V:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Для отображения потоков нажмите Shift + H:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Если вам недостаточно стандартных полей с информацией о процессах, вы можете нажать Shift + F и выбрать дополнительные поля, которые надо отображать. Для выбора или удаления поля используйте пробел:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

3. Утилита htop

Это ещё более мощная утилита для просмотра запущенных процессов в Linux. Пользоваться ею намного удобнее. Здесь поддерживаются не только горячие клавиши, но и управление мышью. А ещё она выводит всё в цвете, поэтому смотреть на данные намного приятнее. Для установки программы выполните:

sudo apt install htop

Для того чтобы запустить выполните в терминале:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Колонки, которые вы увидите в выводе программы, аналогичны тем, что доступны в top, поэтому я не буду рассматривать их здесь отдельно. Для настройки выводимых данных нажмите кнопку F2, затем перейдите в раздел Display Options:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Для того чтобы настроить какие колонки будут отображаться используйте пункт меню Columns:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Тут вы можете выбрать какие колонки отображать, а какие нет, а также можете настроить их порядок.

4. Программа Gnome Monitor

Вы можете смотреть запущенные процессы не только в терминале, но и в графическом интерфейсе. Для этого можно использовать утилиту Gnome Monitor. У неё намного меньше возможностей, по сравнению даже с ps, но зато у неё есть графический интерфейс. Вы можете запустить программу из главного меню системы:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

По умолчанию утилита отображает только процессы текущего пользователя. Если вы хотите получить все процессы кликните по иконке бутерброда и выберите Все процессы:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Теперь программа отображает все запущенные процессы Linux в системе. Здесь вы можете выполнять поиск по процессам, завершать их и многое другое. Но потоков и дерева процессов программа не показывает.

5. Утилита atop

sudo apt install atop

Затем запустите её:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Вот основные колонки, которые выводит утилита и их значения:

Для того чтобы включить отображение потоков процесса нажмите y:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Для просмотра информации о памяти нажмите m, если хотите вернутся обратно, нажмите g:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

Выводы

В этой статье мы разобрали самые основные способы посмотреть список процессов в Linux, как видите есть простые способы, но есть и более сложные и информативные. Какими способами вы пользуетесь чаще всего? Напишите в комментариях!

Источник

List of Java processes

How can I list all Java processes in bash? I need an command line. I know there is command ps but I don’t know what parameters I need to use.

18 Answers 18

and see how you get on

Recent Java comes with Java Virtual Machine Process Status Tool «jps»

is most useful. Prints just pid and qualified main class name:

Starting from Java 7, the simplest way and less error prone is to simply use the command jcmd that is part of the JDK such that it will work the same way on all OS.

Example:

jcmd allows to send diagnostic command requests to a running Java Virtual Machine (JVM).

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

You can use single command pgrep as well (doesn’t require you to use pipes and multiple commands):

For better output format check this command:

This will return all the running java processes in linux environment. Then you can kill the process using the process ID.

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

If I want simply list java processes, use:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

(btw, this example is not the effective one, but simple to remember) 😉

you can pipe the above to another commands, for example:

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

When I want to know if a certain Java class is getting executed, I use the following command line:

From the OS side view, the process’s command name is «java». The «ww» option widens the colum’s maximum characters, so it’s possible to grep the FQN of the related class.

jps & jcmd wasn’t showing me any results when I tried it using using openjdk-1.8 on redhat linux. But even if it did it only shows processes under the current user which doesn’t work in my case. Using the ps|grep is what I ended up doing but the class path for some java apps can be extremely long which makes results illegible so I used sed to remove it. This is a bit rough still but removes everything except: PID, User, java-class/jar, args.

Results look something like:

An alternative on windows to list all processes is:

But that is going to need some parsing to make it more legible.

Как посмотреть java процессы на linux. Смотреть фото Как посмотреть java процессы на linux. Смотреть картинку Как посмотреть java процессы на linux. Картинка про Как посмотреть java процессы на linux. Фото Как посмотреть java процессы на linux

I know, this seems horrible, and non portable, and even poorly implemented, I agree. But because Java actually runs in a VM, for some absurd reason that I can’t really figure out after more then 15 years working the JDK, is why it isn’t possible to see things outside the JVM space, it’s really ridiculous with you think about it. You can do everything else, even fork and join child processes (those were an horrible way of multitasking when the world didn’t know about threads or pthreads, what a hell! what’s going in on with Java?! :).

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *