Почему ps -al не отображает мои Java-программы?

Я не понимаю, почему ps -al или sudo ps -al не будут отображать, например, мои процессы Java. Если я делаю ps -al, то я не вижу, например, моих java-заданий, но я вижу их, когда выполняю (странное и нераспознанное) ps -xal | grep java, что, вероятно, должно быть чем-то другим. Я также могу найти java PID с помощью netstat для порта, на котором работает java (сервер Jetty) (порт 80), получить PID для процесса на порту 80 и затем убить его с помощью своего PID. Мне не кажется, что sudo killall java работает все время. Можете ли вы помочь мне с рабочей стратегией, как упростить обработку 2-3 экземпляров причала, которые появляются только при выполнении ps -al? Я полагаю, что лучший способ - остановить причал аналогично тому, как он запускается, т. Е. sudo mvn jetty:stop, но в руководстве по причалу сказано, что можно просто убить процесс, который быстрее. (Я часто хочу перезапустить причал.)

2
задан 17 February 2014 в 18:58

1 ответ

  • -a и x являются селекторами процессов, поэтому ps покажет список отфильтрованных процессов.

    Если вы хотите увидеть все процессы, используйте: ps ax, ps -ax или ps -A, даже a и -a не совпадают. Ссылка: man ps

    SIMPLE PROCESS SELECTION
           a      Lift the BSD-style "only yourself" restriction, which is imposed
                  upon the set of all processes when some BSD-style (without "-")
                  options are used or when the ps personality setting is BSD-like.
                  The set of processes selected in this manner is in addition to
                  the set of processes selected by other means.  An alternate
                  description is that this option causes ps to list all processes
                  with a terminal (tty), or to list all processes when used
                  together with the x option.
    
           -A     Select all processes.  Identical to -e.
    
           -a     Select all processes except both session leaders (see getsid(2))
                  and processes not associated with a terminal.
    ...
    
           x      Lift the BSD-style "must have a tty" restriction, which is
                  imposed upon the set of all processes when some BSD-style
                  (without "-") options are used or when the ps personality
                  setting is BSD-like.  The set of processes selected in this
                  manner is in addition to the set of processes selected by other
                  means.  An alternate description is that this option causes ps
                  to list all processes owned by you (same EUID as ps), or to list
                  all processes when used together with the a option.
    
  • Для убийства попробуйте с sudo killall -s9 .... Ссылка: Команды и сигналы убийства

0
ответ дан 17 February 2014 в 18:58

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

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