Atualmente, estou usando o seguinte para verificar quanto tempo um processo está em execução:
ps -eo uid,pid,etime | egrep '^ *MY_ID' | egrep 'PID_OF_PROCESS'
E isso gera o seguinte:
MY_ID PID_OF_PROCESS 00:16
No entanto, após o término do processo, quero descobrir por quanto tempo ele realmente foi executado, mas não consigo encontrar essas informações.
apt.ubuntu.com
, em seguida, a imagem foi deletado de imgur. Devo tê-lo usado centenas de vezes no SE e não gosto da perspectiva de editá-los todos. Ainda estou esperando o SE fazer uma substituição automatizada, o que eles não farão, porque nem o fizeram quando toda a documentação do Java foi movida.Antes de ver essas perguntas e suas respostas, fiz um pequeno script bash. Isso ainda é útil, se você não possui direitos de root e o acct não está instalado ou não invoca seu comando diretamente (no meu caso: eu uso uma GUI para configurar processos em segundo plano). Você precisa obter o PID antes da execução (qualquer pessoa interessada em adicioná-lo ao script? :)
Com isso, encontre o PID de PROCESS_NAME
ps aux | awk 'NR == 1 || /PROCESS_NAME/'
Na verdade, tentei combinar USER-ID e PID para tornar o script não ambicioso, mas não é tão fácil ...
ps -eo uid,pid,etime | egrep '$UID[[:space:]]$PID'
não parece funcionar sempre ...fonte
egrep '$UID'
pois sou o único usuário assim:ps -eo uid,pid,etime | egrep $PID