Existe uma maneira de dizer qual arquivo (script, especificamente) executou um comando?

3

Estou rodando o Slackware 13.37, e fiquei me perguntando se havia uma maneira de dizer qual script executava um comando. Eu acompanhei o processo e seus argumentos, mas gostaria de saber de onde o comando foi originado.

    
por zero cola 27.05.2011 / 06:07

1 resposta

5

Não há uma maneira genérica garantida de fazer isso além de percorrer a árvore de processos (observando os comandos PPID , depois o processo PPID , etc ...).

Existe uma boa utilidade para isso, se você não está tentando escrever algo: pstree . Ele lhe dará uma visão "gráfica" da hierarquia do processo. Algo como:

$ pstree -a
 ...
  ├─udevd --daemon
  │   ├─udevd --daemon
  │   └─udevd --daemon
  ├─urxvt
  │   └─bash
  │       └─pstree -ah
  └─xdm
      ├─X :0 vt7 -auth /var/lib/xdm/authdir/authfiles/A:0-g8w3zk
      └─xdm
          └─awesome
              ├─chrome
              │   ├─chrome
              │   └─21*[{chrome}]
              └─qmpdclient
                  └─{qmpdclient}

Existem opções para mostrar o PID s, mostrar ou ocultar as linhas de comando, etc ...

    
por 27.05.2011 / 07:16