
Eu escrevi um shell chamadot.sh Seu conteúdo é:
touch 88888
O comando que estou usando é
sh t.sh | at 03:13Jun15
Depois de executar este comando, apareceu este show na minha tela:
warning: commands will be executed using /bin/sh
job 9 at Sun Jun 15 03:13:00 2014
Fica bem claro que isso será executado em Dom, 15 de junho, 03:13:00 de 2014
Mas quando verifico minha pasta, encontro um arquivo 88888 lá. Removi e tentei novamente, ainda o mesmo resultado.
Quais são os problemas aqui? Seria uma coisa bash/sh? Porque eu vi que será executado por /bin/sh?
Responder1
at
lê comandos da entrada padrão ou de um arquivo se você especificar o -f
sinalizador. O que sh t.sh | at [time]
faz é:
1. execute the shell script t.sh *right now*;
2. pipe the output of the shell script to at.
Mas o script não tem saída, então não há nada para executar no domingo.
O que você quer é at 03:13Jun15 -f t.sh
.