Идентификатор процесса с помощью PS aux

Я - новичок для окружения программирования. Предположение, что я запустил программу (например, NetBeans) от моего терминала, если я ввожу

ps aux|grep netbeans

Я получаю вывод

pre      18775  1.2  0.0  12524  1972 pts/3    S    20:17   0:00 

где 18775 указывает PID и т.д. процесса.

Затем я уничтожаю его использование

kill 18775.

на который исчезает NetBeans UI. Если я пытаюсь получить pid при помощи первой команды, я все еще добираюсь:

pre      19137  0.0  0.0   9136  1068 pts/3    S+   20:19   0:00 grep --color=auto netbeans

Если процесс был уничтожен, почему он все еще показывает вышеупомянутый вывод?

8
задан 17 November 2011 в 07:51

3 ответа

grep захватывает себя. Попробуйте что-то как:

ps aux |grep [n]etbeans

это мешает grep показывать себя в выводе

14
ответ дан 23 November 2019 в 05:22

Никогда не используйте ps вместе с grep.

Скорее используйте killall netbeans, pkill netbeans уничтожить его. Для идентификатора процесса pgrep netbeans.

Больше на PS и grep.

5
ответ дан 23 November 2019 в 05:22

Поскольку это - PID для процесса grep, который стоится в очереди для погони ps aux.

4
ответ дан 23 November 2019 в 05:22

Другие вопросы по тегам:

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