1
0
mirror of https://github.com/kellyjonbrazil/jc.git synced 2025-06-17 00:07:37 +02:00
Files
jc/docs/parsers/crontab.md
2022-01-25 17:07:47 -08:00

3.2 KiB

Home

jc.parsers.crontab

jc - JSON CLI output utility crontab -l command output and crontab file parser

Supports crontab -l command output and crontab files.

Usage (cli):

$ crontab -l | jc --crontab

or

$ jc crontab -l

Usage (module):

import jc result = jc.parse('crontab', crontab_output)

or

import jc.parsers.crontab result = jc.parsers.crontab.parse(crontab_output)

Schema:

{ "variables": [ { "name": string, "value": string } ], "schedule": [ { "occurrence" string, "minute": [ string ], "hour": [ string ], "day_of_month": [ string ], "month": [ string ], "day_of_week": [ string ], "occurrence": string, "command": string } ] }

Examples:

$ crontab -l | jc --crontab -p {

  • "variables" - [ {

  • "name" - "MAILTO",

  • "value" - "root" }, {

  • "name" - "PATH",

  • "value" - "/sbin:/bin:/usr/sbin:/usr/bin" }, {

  • "name" - "SHELL",

  • "value" - "/bin/bash" } ],

  • "schedule" - [ {

  • "minute" - [ "5" ],

  • "hour" - [ "10-11", "22" ],

  • "day_of_month" - [ "*" ],

  • "month" - [ "*" ],

  • "day_of_week" - [ "*" ],

  • "command" - "/var/www/devdaily.com/bin/mk-new-links.php" }, {

  • "minute" - [ "30" ],

  • "hour" - [ "4/2" ],

  • "day_of_month" - [ "*" ],

  • "month" - [ "*" ],

  • "day_of_week" - [ "*" ],

  • "command" - "/var/www/devdaily.com/bin/create-all-backups.sh" }, {

  • "occurrence" - "yearly",

  • "command" - "/home/maverick/bin/annual-maintenance" }, {

  • "occurrence" - "reboot",

  • "command" - "/home/cleanup" }, {

  • "occurrence" - "monthly",

  • "command" - "/home/maverick/bin/tape-backup" } ] }

    $ cat /etc/crontab | jc --crontab -p -r {

  • "variables" - [ {

  • "name" - "MAILTO",

  • "value" - "root" }, {

  • "name" - "PATH",

  • "value" - "/sbin:/bin:/usr/sbin:/usr/bin" }, {

  • "name" - "SHELL",

  • "value" - "/bin/bash" } ],

  • "schedule" - [ {

  • "minute" - "5",

  • "hour" - "10-11,22",

  • "day_of_month" - "*",

  • "month" - "*",

  • "day_of_week" - "*",

  • "command" - "/var/www/devdaily.com/bin/mk-new-links.php" }, {

  • "minute" - "30",

  • "hour" - "4/2",

  • "day_of_month" - "*",

  • "month" - "*",

  • "day_of_week" - "*",

  • "command" - "/var/www/devdaily.com/bin/create-all-backups.sh" }, {

  • "occurrence" - "yearly",

  • "command" - "/home/maverick/bin/annual-maintenance" }, {

  • "occurrence" - "reboot",

  • "command" - "/home/cleanup" }, {

  • "occurrence" - "monthly",

  • "command" - "/home/maverick/bin/tape-backup" } ] }

info Objects

class info()

Provides parser metadata (version, author, etc.)

parse

def parse(data, raw=False, quiet=False)

Main text parsing function

Arguments:

  • data - (string) text data to parse
  • raw - (boolean) unprocessed output if True
  • quiet - (boolean) suppress warning messages if True

Returns:

Dictionary. Raw or processed structured data.

Parser Information

Compatibility: linux, darwin, aix, freebsd

Version 1.6 by Kelly Brazil (kellyjonbrazil@gmail.com)