Linux - Descubra o diretório de trabalho atual de um processo?
11
Se eu tiver um processo PID X, como posso descobrir em que diretório ele estava sendo executado? Eu posso ver com ps aux | grep Xa linha de comando completa com a qual ele foi chamado. No entanto, neste caso, é ./script.sh, e eu quero ver qual script.shestá sendo executado.
O problema /proc/PID/exeé que, para scripts de shell, ele mostra a localização do shell. O problema /proc/PID/cwdé que isso mostra o diretório de trabalho atual do processo. Se o processo alterar os diretórios, isso será refletido no destino desse link simbólico.
Isso mostrará qual era o $ PWD no momento em que o script foi iniciado (substitua o ID do processo em que você está interessado, onde você vê "PID"):
Há uma resposta mais simples, que deve ser usada
pwdx
, conforme detalhado aquifonte