[{"data":1,"prerenderedAt":628},["ShallowReactive",2],{"cron-guides-pt-br":3},[4,147,395],{"id":5,"title":6,"author":7,"body":8,"description":129,"extension":130,"faq":131,"meta":138,"navigation":139,"navigationTitle":133,"order":140,"path":141,"publishedAt":142,"seo":143,"slug":144,"stem":145,"updatedAt":142,"__hash__":146},"cron_guides\u002Fpt-br\u002Fguides\u002Fwhat-is-a-cron-job.md","O que é um Cron Job? Guia prático","ToolkitVault.com",{"type":9,"value":10,"toc":121},"minimark",[11,16,20,31,34,37,41,57,61,68,83,87,94,97,101,104,107],[12,13,15],"h2",{"id":14},"como-o-cron-funciona","Como o Cron funciona",[17,18,19],"p",{},"Cron é um agendador presente em sistemas Unix. O serviço lê arquivos crontab e inicia um comando quando a data e a hora correspondem à expressão.",[21,22,28],"pre",{"className":23,"code":25,"language":26,"meta":27},[24],"language-text","30 2 * * * \u002Fusr\u002Flocal\u002Fbin\u002Fbackup\n","text","",[29,30,25],"code",{"__ignoreMap":27},[17,32,33],{},"Esse exemplo inicia um backup todos os dias às 02:30.",[17,35,36],{},"Uma entrada também pode definir variáveis, redirecionar a saída ou chamar um script. Manter a lógica complexa em um script testado geralmente deixa o agendamento mais legível e fácil de manter.",[12,38,40],{"id":39},"usos-comuns","Usos comuns",[42,43,44,48,51,54],"ul",{},[45,46,47],"li",{},"Backups e geração de relatórios",[45,49,50],{},"Limpeza de cache e rotação de logs",[45,52,53],{},"Importação de dados",[45,55,56],{},"Verificações de integridade e notificações",[12,58,60],{"id":59},"crontabs-de-usuário-e-do-sistema","Crontabs de usuário e do sistema",[17,62,63,64,67],{},"O comando ",[29,65,66],{},"crontab -e"," edita o agendamento do usuário atual. As tarefas são executadas com as permissões desse usuário e normalmente recebem um ambiente mais limitado do que um terminal interativo. Uma crontab do sistema pode ter um campo adicional para o nome do usuário, então confirme o formato antes de copiar uma linha.",[17,69,70,71,74,75,78,79,82],{},"Locais comuns incluem ",[29,72,73],{},"\u002Fetc\u002Fcrontab",", ",[29,76,77],{},"\u002Fetc\u002Fcron.d"," e diretórios periódicos como ",[29,80,81],{},"\u002Fetc\u002Fcron.daily",". Os caminhos exatos variam conforme o sistema operacional.",[12,84,86],{"id":85},"logs-e-solução-de-problemas","Logs e solução de problemas",[17,88,89,90,93],{},"Quando um comando funciona no terminal, mas falha no Cron, confira o usuário, o diretório atual, o ",[29,91,92],{},"PATH",", o shell e as variáveis de ambiente. Use caminhos absolutos e encaminhe a saída padrão e os erros para um log controlado.",[17,95,96],{},"Confira também se o serviço Cron está ativo e se a crontab pertence ao usuário correto. Uma diferença de fuso horário costuma explicar tarefas executadas na hora errada.",[12,98,100],{"id":99},"como-tornar-tarefas-recorrentes-confiáveis","Como tornar tarefas recorrentes confiáveis",[17,102,103],{},"Prepare a tarefa para ser repetida com segurança. Use um bloqueio quando duas execuções não puderem se sobrepor, retorne códigos de saída úteis e monitore falhas. Não armazene segredos diretamente na crontab e restrinja o acesso aos arquivos de configuração.",[17,105,106],{},"Use caminhos absolutos, defina as variáveis de ambiente necessárias e registre os erros. Teste o comando com o mesmo usuário que executará o Cron.",[17,108,109,110,115,116,120],{},"Cole um agendamento no ",[111,112,114],"a",{"href":113},"\u002Fpt-br\u002Fcron-expression-decoder","decodificador Cron"," ou crie um com o ",[111,117,119],{"href":118},"\u002Fpt-br\u002Fcron-expression-generator","gerador Cron",".",{"title":27,"searchDepth":122,"depth":122,"links":123},2,[124,125,126,127,128],{"id":14,"depth":122,"text":15},{"id":39,"depth":122,"text":40},{"id":59,"depth":122,"text":60},{"id":85,"depth":122,"text":86},{"id":99,"depth":122,"text":100},"Aprenda como funcionam os Cron Jobs, arquivos crontab e tarefas recorrentes, com recomendações para testes seguros.","md",[132,135],{"question":133,"answer":134},"O que é um Cron Job?","Um Cron Job é um comando ou script executado automaticamente por um sistema Unix de acordo com um agendamento recorrente.",{"question":136,"answer":137},"Onde ficam armazenados os Cron Jobs?","As tarefas do usuário normalmente ficam em uma crontab editada com crontab -e. Tarefas do sistema também podem ficar em \u002Fetc\u002Fcrontab ou \u002Fetc\u002Fcron.d.",{},true,1,"\u002Fpt-br\u002Fguides\u002Fwhat-is-a-cron-job","2026-08-13T12:00:00-03:00",{"title":6,"description":129},"what-is-a-cron-job","pt-br\u002Fguides\u002Fwhat-is-a-cron-job","Lq9NsZ1cch-NmR0eKFB12PHalwivLwK6sL1eK4T9j34",{"id":148,"title":149,"author":7,"body":150,"description":380,"extension":130,"faq":381,"meta":388,"navigation":139,"navigationTitle":389,"order":122,"path":390,"publishedAt":142,"seo":391,"slug":392,"stem":393,"updatedAt":142,"__hash__":394},"cron_guides\u002Fpt-br\u002Fguides\u002Fcron-syntax-examples.md","Sintaxe Cron e exemplos de expressões",{"type":9,"value":151,"toc":374},[152,156,162,242,259,263,344,351,355,358,361,365,368],[12,153,155],{"id":154},"os-cinco-campos","Os cinco campos",[21,157,160],{"className":158,"code":159,"language":26,"meta":27},[24],"minuto hora dia-do-mês mês dia-da-semana\n",[29,161,159],{"__ignoreMap":27},[163,164,165,178],"table",{},[166,167,168],"thead",{},[169,170,171,175],"tr",{},[172,173,174],"th",{},"Agendamento",[172,176,177],{},"Expressão",[179,180,181,192,202,212,222,232],"tbody",{},[169,182,183,187],{},[184,185,186],"td",{},"A cada minuto",[184,188,189],{},[29,190,191],{},"* * * * *",[169,193,194,197],{},[184,195,196],{},"A cada 5 minutos",[184,198,199],{},[29,200,201],{},"*\u002F5 * * * *",[169,203,204,207],{},[184,205,206],{},"A cada hora",[184,208,209],{},[29,210,211],{},"0 * * * *",[169,213,214,217],{},[184,215,216],{},"Todos os dias à meia-noite",[184,218,219],{},[29,220,221],{},"0 0 * * *",[169,223,224,227],{},[184,225,226],{},"Dias úteis às 09:00",[184,228,229],{},[29,230,231],{},"0 9 * * 1-5",[169,233,234,237],{},[184,235,236],{},"Primeiro dia do mês às 07:00",[184,238,239],{},[29,240,241],{},"0 7 1 * *",[17,243,244,245,74,248,74,251,254,255,258],{},"Os operadores ",[29,246,247],{},"*",[29,249,250],{},",",[29,252,253],{},"-"," e ",[29,256,257],{},"\u002F"," representam todos os valores, uma lista, um intervalo e um passo.",[12,260,262],{"id":261},"mais-exemplos-úteis","Mais exemplos úteis",[163,264,265,277],{},[166,266,267],{},[169,268,269,272,274],{},[172,270,271],{},"Objetivo",[172,273,177],{},[172,275,276],{},"Observação",[179,278,279,292,305,318,331],{},[169,280,281,284,289],{},[184,282,283],{},"A cada 15 minutos",[184,285,286],{},[29,287,288],{},"*\u002F15 * * * *",[184,290,291],{},"Nos minutos 0, 15, 30 e 45",[169,293,294,297,302],{},[184,295,296],{},"Todos os dias às 06:30",[184,298,299],{},[29,300,301],{},"30 6 * * *",[184,303,304],{},"Usa o fuso horário do servidor",[169,306,307,310,315],{},[184,308,309],{},"Toda segunda-feira às 09:00",[184,311,312],{},[29,313,314],{},"0 9 * * 1",[184,316,317],{},"Confira a numeração do domingo",[169,319,320,323,328],{},[184,321,322],{},"Dias úteis às 18:00",[184,324,325],{},[29,326,327],{},"0 18 * * 1-5",[184,329,330],{},"De segunda a sexta-feira",[169,332,333,336,341],{},[184,334,335],{},"A cada três horas",[184,337,338],{},[29,339,340],{},"0 *\u002F3 * * *",[184,342,343],{},"Às 00:00, 03:00, 06:00 e assim por diante",[17,345,346,347,350],{},"O Cron compara cada campo com o horário atual. ",[29,348,349],{},"*\u002F15"," não significa quinze minutos depois da execução anterior. A expressão corresponde a pontos fixos dentro da hora.",[12,352,354],{"id":353},"fusos-horários-e-execuções-perdidas","Fusos horários e execuções perdidas",[17,356,357],{},"Uma expressão Cron não contém um fuso horário. O Cron tradicional geralmente usa o fuso da máquina, enquanto alguns contêineres e serviços gerenciados usam UTC. Mudanças no horário de verão podem eliminar ou repetir um horário local.",[17,359,360],{},"O Cron também não recupera automaticamente uma tarefa perdida enquanto a máquina estava desligada. Se isso for necessário, use um agendador com tratamento de execuções perdidas ou prepare a tarefa para identificar trabalho pendente.",[12,362,364],{"id":363},"validação-antes-da-produção","Validação antes da produção",[17,366,367],{},"Confira várias execuções futuras, teste o comando separadamente e identifique o dialeto Cron usado pela plataforma. Verifique principalmente meia-noite, mudanças de mês, dias úteis e horário de verão. Em produção, registre falhas e impeça sobreposições quando uma tarefa puder demorar mais do que o intervalo.",[17,369,370,371,373],{},"Use o ",[111,372,114],{"href":113}," para receber uma explicação e conferir as próximas execuções.",{"title":27,"searchDepth":122,"depth":122,"links":375},[376,377,378,379],{"id":154,"depth":122,"text":155},{"id":261,"depth":122,"text":262},{"id":353,"depth":122,"text":354},{"id":363,"depth":122,"text":364},"Entenda os campos, curingas e operadores Cron com exemplos de agendamentos por hora, dia, semana e mês.",[382,385],{"question":383,"answer":384},"O que significa 0 0 * * *?","No formato Unix de cinco campos, significa todos os dias à meia-noite.",{"question":386,"answer":387},"O que significa *\u002F5 no Cron?","Significa a cada cinco unidades do campo. No campo dos minutos, significa a cada cinco minutos.",{},"Sintaxe Cron e exemplos","\u002Fpt-br\u002Fguides\u002Fcron-syntax-examples",{"title":149,"description":380},"cron-syntax-examples","pt-br\u002Fguides\u002Fcron-syntax-examples","1xZmtQ772zjEP1I1HdquZ0dRUBrCALj_4nlbjkTiyNU",{"id":396,"title":397,"author":7,"body":398,"description":612,"extension":130,"faq":613,"meta":620,"navigation":139,"navigationTitle":621,"order":622,"path":623,"publishedAt":142,"seo":624,"slug":625,"stem":626,"updatedAt":142,"__hash__":627},"cron_guides\u002Fpt-br\u002Fguides\u002Funix-vs-spring-cron.md","Cron Unix vs Spring e Quartz",{"type":9,"value":399,"toc":606},[400,404,461,476,483,487,558,564,568,590,593,597,600],[12,401,403],{"id":402},"diferenças-de-formato","Diferenças de formato",[163,405,406,420],{},[166,407,408],{},[169,409,410,413,417],{},[172,411,412],{},"Sistema",[172,414,416],{"align":415},"right","Campos",[172,418,419],{},"Todos os dias às 02:00",[179,421,422,435,448],{},[169,423,424,427,430],{},[184,425,426],{},"Cron Unix",[184,428,429],{"align":415},"5",[184,431,432],{},[29,433,434],{},"0 2 * * *",[169,436,437,440,443],{},[184,438,439],{},"Spring Cron",[184,441,442],{"align":415},"6",[184,444,445],{},[29,446,447],{},"0 0 2 * * *",[169,449,450,453,456],{},[184,451,452],{},"Quartz Cron",[184,454,455],{"align":415},"6 ou 7",[184,457,458],{},[29,459,460],{},"0 0 2 * * ?",[17,462,463,464,74,467,74,470,254,473,120],{},"Unix começa nos minutos. Spring e Quartz começam nos segundos. Quartz também aceita modificadores como ",[29,465,466],{},"?",[29,468,469],{},"L",[29,471,472],{},"W",[29,474,475],{},"#",[17,477,478,479,482],{},"Não basta adicionar ",[29,480,481],{},"0",". Confira a numeração do domingo, as regras dos campos de dia e os modificadores aceitos pelo agendador.",[12,484,486],{"id":485},"exemplos-de-conversão","Exemplos de conversão",[163,488,489,504],{},[166,490,491],{},[169,492,493,495,498,501],{},[172,494,271],{},[172,496,497],{},"Unix ou Kubernetes",[172,499,500],{},"Spring",[172,502,503],{},"Quartz",[179,505,506,524,540],{},[169,507,508,510,514,519],{},[184,509,186],{},[184,511,512],{},[29,513,191],{},[184,515,516],{},[29,517,518],{},"0 * * * * *",[184,520,521],{},[29,522,523],{},"0 * * * * ?",[169,525,526,528,532,536],{},[184,527,419],{},[184,529,530],{},[29,531,434],{},[184,533,534],{},[29,535,447],{},[184,537,538],{},[29,539,460],{},[169,541,542,544,548,553],{},[184,543,226],{},[184,545,546],{},[29,547,231],{},[184,549,550],{},[29,551,552],{},"0 0 9 * * MON-FRI",[184,554,555],{},[29,556,557],{},"0 0 9 ? * MON-FRI",[17,559,560,561,563],{},"Esses exemplos mostram a posição dos campos, mas a sintaxe aceita depende da implementação e da versão. O Quartz usa ",[29,562,466],{}," quando um dos dois campos de dia não deve ter um valor específico.",[12,565,567],{"id":566},"caracteres-específicos-do-quartz","Caracteres específicos do Quartz",[42,569,570,575,580,585],{},[45,571,572,574],{},[29,573,466],{}," deixa o dia do mês ou da semana sem valor específico.",[45,576,577,579],{},[29,578,469],{}," representa o último dia, dependendo do campo.",[45,581,582,584],{},[29,583,472],{}," seleciona o dia útil mais próximo.",[45,586,587,589],{},[29,588,475],{}," escolhe uma ocorrência, como a segunda segunda-feira do mês.",[17,591,592],{},"Esses modificadores não funcionam em uma crontab Linux tradicional nem em um CronJob do Kubernetes.",[12,594,596],{"id":595},"lista-de-verificação-para-migração","Lista de verificação para migração",[17,598,599],{},"Primeiro, identifique o agendador. Conte os campos, confirme se ele aceita segundos e ano, confira a numeração dos dias e verifique o fuso horário. Visualize várias execuções, inclusive em mudanças de mês. Durante a revisão, mantenha a expressão original ao lado da convertida para detectar facilmente um campo deslocado.",[17,601,602,603,605],{},"Crie um agendamento no ",[111,604,119],{"href":118}," e confira a documentação do sistema de destino.",{"title":27,"searchDepth":122,"depth":122,"links":607},[608,609,610,611],{"id":402,"depth":122,"text":403},{"id":485,"depth":122,"text":486},{"id":566,"depth":122,"text":567},{"id":595,"depth":122,"text":596},"Compare o formato Unix de cinco campos com expressões Spring e Quartz de seis ou sete campos e evite erros de conversão.",[614,617],{"question":615,"answer":616},"Por que o Spring Cron tem seis campos?","O Spring adiciona os segundos como primeiro campo, enquanto o formato Unix começa nos minutos.",{"question":618,"answer":619},"Posso usar uma expressão Unix diretamente no Spring?","Não. Adicione o campo dos segundos e confira as regras dos dias na versão do Spring usada pelo projeto.",{},"Cron Unix vs Spring",3,"\u002Fpt-br\u002Fguides\u002Funix-vs-spring-cron",{"title":397,"description":612},"unix-vs-spring-cron","pt-br\u002Fguides\u002Funix-vs-spring-cron","uDtnFgtQXSlC2fpHR2CgAOPcRHPtKLQ-1ovijIBqPgg",1786609983091]