Saída de comando superior está vazia quando executada a partir do cron
Eu estava tentando redirecionar a saída do comando TOP no arquivo específico a cada 5 minutos com o comando abaixo.
top -b -n 1 > /var/tmp/TOP_USAGE.csv.$(date +"%I-%M-%p_%d-%m-%Y")
-rw-r--r-- 1 root root 0 Dec 9 17:20 TOP_USAGE.csv.05-20-PM_09-12-2015
-rw-r--r-- 1 root root 0 Dec 9 17:25 TOP_USAGE.csv.05-25-PM_09-12-2015
-rw-r--r-- 1 root root 0 Dec 9 17:30 TOP_USAGE.csv.05-30-PM_09-12-2015
-rw-r--r-- 1 root root 0 Dec 9 17:35 TOP_USAGE.csv.05-35-PM_09-12-2015
Por isso, criei um script de shell muito pequeno (1 linha) para isso, para que eu possa executar a cada 5 minutos via cronjob.
O problema é que quando executo esse script manualmente, posso ver a saída no arquivo; no entanto, quando esse script é executado automaticamente, o arquivo é gerado a cada 5 minutos, mas não há dados (o arquivo está vazio)
Alguém pode me ajudar nisto por favor?
Agora eu modifiquei o script e ainda é o mesmo.
#!/bin/sh
PATH=$(/usr/bin/getconf PATH)
/usr/bin/top -b -n 1 > /var/tmp/TOP_USAGE.csv.$(date +"%I-%M-%p_%d-%m-%Y")