Corri e esqueceu o e em crontab -e
antes de eu bater Enter.
Um prompt apareceu, então fechei com Ctrl+ D, o mesmo que normalmente saio dos prompts de entrada.
Agora, sem aviso, meu crontab inteiro está vazio.
Por quê? Que lógica fez isso acontecer? Como devo fechar prompts diferentes de Ctrl+ Dpara que nada seja salvo?
Respostas:
Control+Cneste caso, abortará
crontab
e não apagará as entradas atuais do crontab. Caso contrário, o bare-
é uma indicação comum no Unix de que a entrada deve ser lida a partir da entrada padrão e Control+Dfecha a entrada padrão, resultando no arquivo crontab vazio, pois nada foi canalizado na entrada padrão.Uma entrada de usuário crontab ao longo das linhas de
pode ajudar contra tais oopsies futuros, fornecendo uma cópia de backup dos dados do crontab (ou você pode optar pelo controle de versão ou por mais complexo que queira que o backup seja).
fonte
Você substituiu seu crontab pelo conteúdo de stdin, que estava vazio. É essencialmente o mesmo que
crontab < /dev/null
.Pressionar Ctrl + C pode ser um hábito melhor.
Seu crontab provavelmente desapareceu. O backup pode estar em algum lugar
/var/spool/cron
, mas não conheço nenhum daemon cron que mantenha os backups. Você deve configurar backups/var/spool/cron
se isso for importante para você.fonte