diferença entre args no comando ps

0

Eu sou novo no bash e no Linux e tenho uma pergunta. Meu problema é que eu quero imprimir um nome de processo pelo seu pid. Eu pesquisei e encontrei algumas maneiras de fazer isso:

  • ps -p <PID> -o cmd

  • ps -p <PID> -o comm

Estou usando o Xubutnu 14.04 e o primeiro comando (em um pid arbitrário) me mostrou:

CMD

x-session-manager

e o segundo:

COMMAND

x-session-manag

como você pode ver o segundo nome não está cheio. Além disso, ambos têm um nome de coluna. Descobri que adicionar = no final do comando faria com que o nome da coluna desaparecesse. Eu li man ps mas não consegui entender a diferença real entre comm e cmd (porque a explicação sobre ambos era alias ).

Quais são as diferenças entre os sinalizadores cmd e comm para ps -o ?

    
por user180394 21.07.2016 / 14:45

1 resposta

0

De acordo com man ps (para ps de procps-ng 3.3.12 ) a opção comm mostra apenas o nome do executável sem mostrar a modificação do nome do comando, enquanto cmd mostra o nome do comando com argumentos como uma string e possivelmente poderia mostrar a modificação dos argumentos do comando.

Quando esses comandos são especificados por último, eles mostram a seqüência de saída para a borda da exibição, portanto, o nome pode ser truncado. O truncamento da saída para N colunas poderia ser feito com o comando --cols <N> , limpando o cabeçalho com --no-header , como este

ps -p <PID> -o comm --cols <N> --no-header
    
por 21.07.2016 / 16:06

Tags