Impresionante módulo comunitario

NodoCron

mpn mpn Estado de cobertura Código Clima Estado de construcción Estado de dependencia Estado de dependencia de desarrollo

El módulo node-cron es un pequeño programador de tareas en JavaScript puro para node.js basado en GNU crontab . Este módulo le permite programar tareas en node.js utilizando la sintaxis completa de crontab.

MNP

Empezando

Instale node-cron usando npm:

1
$ npm install --save node-cron

Importe node-cron y programe una tarea:

1 2 3 4 5
var cron = require('node-cron'); cron.schedule('* * * * *', function(){ console.log('running a task every minute'); });

Sintaxis cron

Esta es una referencia rápida a la sintaxis de cron y también muestra las opciones admitidas por node-cron.

Allowed fields

1 2 3 4 5 6 7 8 9
# ┌────────────── second (optional) # │ ┌──────────── minute # │ │ ┌────────── hour # │ │ │ ┌──────── day of month # │ │ │ │ ┌────── month # │ │ │ │ │ ┌──── day of week # │ │ │ │ │ │ # │ │ │ │ │ │ # * * * * * *

Allowed values

campo valor
segundo 0-59
minuto 0-59
hora 0-23
dia del mes 1-31
mes 1-12 (o nombres)
día de la semana 0-7 (o nombres, 0 o 7 son domingo)

Usando múltiples valores

Puedes utilizar múltiples valores separados por coma:

1 2 3 4 5
var cron = require('node-cron'); cron.schedule('1,2,4,5 * * * *', function(){ console.log('running every minute 1, 2, 4 and 5'); });

Usando rangos

También puede definir un rango de valores:

1 2 3 4 5
var cron = require('node-cron'); cron.schedule('1-5 * * * *', function(){ console.log('running every minute to 1 from 5'); });

Usando valores de paso

Los valores de paso se pueden usar junto con rangos, siguiendo un rango con '/' y un número. Por ejemplo: 1-10/2eso es lo mismo que 2,4,6,8,10. También se permiten pasos después de un asterisco, por lo que si desea decir "cada dos minutos" , Solo usa */2.

1 2 3 4 5
var cron = require('node-cron'); cron.schedule('*/2 * * * *', function(){ console.log('running a task every two minutes'); });

Usando nombres

Para el mes y el día de la semana también puede utilizar nombres o nombres cortos, por ejemplo:

1 2 3 4 5
var cron = require('node-cron'); cron.schedule('* * * January,September Sunday', function(){ console.log('running on Sundays of January and September'); });

O con nombres cortos:

1 2 3 4 5
var cron = require('node-cron'); cron.schedule('* * * Jan,Sep Sun', function(){ console.log('running on Sundays of January and September'); });

Métodos cron

Schedule

Programa la tarea dada para que se ejecute cada vez que la expresión cron marca.

Argumentos:

  • !expresión de cadena - expresión cron
  • !Función func - Tarea a ejecutar
  • booleano?inmediateStart: si se debe iniciar el programador inmediatamente después de la creación.

Métodos de tarea programada

Start

Inicia la tarea programada.

1 2 3 4 5 6 7
var cron = require('node-cron'); var task = cron.schedule('* * * * *', function() { console.log('immediately started'); }, false); task.start();

Stop

La tarea no se ejecutará a menos que se reinicie.

1 2 3 4 5 6 7
var cron = require('node-cron'); var task = cron.schedule('* * * * *', function() { console.log('will execute every minute until stopped'); }); task.stop();

Destroy

La tarea será detenida y completamente destruida.

1 2 3 4 5 6 7
var cron = require('node-cron'); var task = cron.schedule('* * * * *', function() { console.log('will not execute anymore, nor be able to restart'); }); task.destroy();

Validate

Valide que la cadena proporcionada sea una expresión cron válida.

1 2 3 4
var cron = require('node-cron'); var valid = cron.validate('59 * * * *'); var invalid = cron.validate('60 * * * *');

Asuntos

No dude en enviar problemas y solicitudes de mejora aquí .

Colaboradores

En general, seguimos el flujo de trabajo de Git de "bifurcación y extracción".

  • Bifurca el repositorio en GitHub;
  • Confirma los cambios en una rama de tu bifurcación;
  • Solicite una extracción "en sentido ascendente" con sus cambios;

NOTA: ¡Asegúrese de fusionar lo último de "upstream" antes de realizar una solicitud de extracción!

No contribuya con código que no haya escrito usted mismo, a menos que esté seguro de tener la capacidad legal para hacerlo. También asegúrese de que todo el código contribuido pueda distribuirse bajo la licencia ISC.

Licencia

nodo-cron está bajoISC License.