Você precisa chamar o comando da seguinte forma:
22 14 * * * ps -ef >> /home/documents/test.log
ou com informações de data / hora
22 14 * * * (/bin/date;/bin/ps -ef) >> /home/documents/test.log
Como eu criaria um crontab que registra todos os processos e os salva em um arquivo de log chamado /home/documents/test.log
?
Eu tentei isso:
22 14 * * * ps >> /home/documents/test.log
mas não funciona. O que está errado?
Você precisa chamar o comando da seguinte forma:
22 14 * * * ps -ef >> /home/documents/test.log
ou com informações de data / hora
22 14 * * * (/bin/date;/bin/ps -ef) >> /home/documents/test.log
Primeiro, o caminho para o seu arquivo provavelmente está errado. A maneira como é estruturado agora parece dizer "diretório principal de nível superior para o usuário denominado documents
".
O que você realmente quer é /home/$USER/Documents/test.log
Onde:
D
e não um d
minúsculas
Lembre-se de que executar ps
sem parâmetros mostrará apenas o processo atual e não todos os outros processos. Eu aprendi a usar ps -aux
.
Portanto, seu comando cron
seria:
22 14 * * * ps -aux >> /home/$USER/Documents/test.log
Não se esqueça de alterar o $ USER para o seu ID de usuário real.
Para verificar a saída, você pode usar:
cat /home/$USER/Documents/test.log