Quando você executa o comando crontab -e
, ele permite editar um arquivo temporário. Quando você sai do editor, o arquivo temporário é verificado quanto a erros de sintaxe e, se não houver algum, ele é instalado no diretório do sistema que contém os crontabs dos usuários. Se você salvar o arquivo em um local diferente, o arquivo temporário não será modificado e, portanto, seu crontab anterior permanecerá em vigor. Execute o comando crontab -l
para verificar o conteúdo do seu crontab.
Cada tarefa do cron é executada em seu diretório pessoal. Isso é completamente independente da localização do arquivo temporário que você edita. Se você deseja que um trabalho seja executado em um diretório diferente, inicie-o com o comando cd
, por exemplo,
* * * * * cd ~/subdir && date >>somefile
Isso muda para o diretório subdir
em seu diretório inicial (que já deve existir), e a saída de date
será gravada em /home/pi/subdir/somefile
. Se o comando cd
falhar (por exemplo, porque o diretório não existe), o comando date
não será executado, graças ao operador &&
.
Você não precisa escrever o caminho completo para date
, porque ele está no caminho de pesquisa padrão do comando.
Não tenho certeza do que você quer dizer com "ver o arquivo inteiro sendo atualizado". O comando tail -f
mostra as últimas 10 linhas do arquivo no momento em que é executado, então continua rodando para sempre (ou até que você o mate) e mostra as linhas conforme elas são adicionadas. Se você quiser mostrar apenas linhas recém-adicionadas (ou seja, não mostrar nada quando tail
for iniciado, diga para a saída de 0 linhas:
tail -n 0 -f /home/pi/cron_date
Se você quiser mostrar todo o arquivo e, em seguida, imprimir novas linhas à medida que forem adicionadas, diga tail
para iniciar na linha 1.
tail -n +1 -f /home/pi/cron_date