Por que os argumentos de um comando são alterados quando vistos por ps?

1

Quando executo meu aplicativo favorito, por que os argumentos parecem diferentes quando vistos por ps ?

$ redshift -l 12.94:43.75 2>/dev/null 1>&2 &
[1] 8637
$ ps -o cmd= -C redshift
redshift -l 12.94 43.75

Observe os dois pontos ausentes.

    
por MichalH 13.08.2015 / 18:34

1 resposta

2

Embora os detalhes sejam específicos do sistema operacional, a maioria dos sistemas permite alterar os argumentos da linha de comando conforme são relatados pelo ps (ou no sistema de arquivos / proc). Por exemplo, em alguns sistemas, você pode editar diretamente o argv.

Muitos sistemas vêm com uma função de biblioteca chamada setproctitle que permite fazer isso. Então, um bom lugar para procurar seria a man page e source para setproctitle se você quiser ver como isso funciona no seu sistema.

    
por 14.08.2015 / 02:38