1.0.0 • Published 3 years ago

cron-to-human v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
3 years ago

Cron-To-Human

A Node.js Library that Convert Cron-Tab Instruction/Expression Format (* * * * * *) to human readable text

Compatibility

Node >= 0.8

Typescript <= 4.2

#Install

    npm install 

#Usage

Simple Intruction

    
    const toHuman = require('cron-to-human');

    const { error, results } = toHuman.convertInstruction(" * 30 6 * * * ");

    if(error) console.log(error)
    else{
        console.log("Run Job:", results) // Run Job:  06:30 am 
    }
      

with days of the week

    const toHuman = require('cron-to-human');

    const { error, results } = toHuman.convertInstruction(" * 30 6,8 * * 1,7 ");

    if(error) console.log(error)
    else{
        console.log("Run Job:", results) // Run Job:  06:30 am and 08:00 am   sun and mon
    }

with days of the week and months

    const toHuman = require('cron-to-human');

    const { error, results } = toHuman.convertInstruction(" * * 15 * 1,3,7 7 ");

    if(error) console.log(error)
    else{
        console.log("Run Job:", results) // Run Job:  03:00 pm sun  Feb, Apr and Aug
    }

Cron Tab Format - Interval

Tab Format

A field may contain an asterisk (*), which always stands for "first-last".

Ranges of numbers are allowed. Ranges are two numbers separated with a hyphen. The specified range is inclusive. For example, 8-11 for an 'hours' entry specifies execution at hours 8, 9, 10, and 11.

Lists are allowed. A list is a set of numbers (or ranges) separated by commas. Examples: "1,2,5,9", "0-4,8-12".

Options/Config

this package uses Cron-parser internally for parsing and manipulating cron-tab instructions. It includes support for timezones and DST transitions.

  • abr
  • cron-parser Options

    #abbr

  • type: Boolean

  • description: use abbreciation for Months and days of the week
  • default: true

    #cron-parser Options

  • for this option check out cron-parser for more options

example with Config options

    const toHuman = require("cron-to-human")

    const config = {
        abbr: false,
        parser: {
            currentDate: '2016-03-27 00:00:01',
            tz: 'Europe/Athens'
        }
    }

    const { error, results } = toHuman.convertInstruction(" * * 15 * 1,3,7 7 ", config);

    if(error) console.log(error)
    else{
        console.log("Run Job:", results) // Run Job:  03:00 pm sunday  February, April and August
    }

License

MIT