1
0
mirror of https://github.com/kellyjonbrazil/jc.git synced 2025-06-17 00:07:37 +02:00
Files
jc/docs/parsers/env.md
2020-08-05 13:32:59 -07:00

1.8 KiB

jc.parsers.env

jc - JSON CLI output utility env Parser

Usage (cli):

specify --env as the first argument if the piped input is coming from env

Usage (module):

import jc.parsers.env
result = jc.parsers.env.parse(env_command_output)

Compatibility:

'linux', 'darwin', 'cygwin', 'win32', 'aix', 'freebsd'

Examples:

$ env | jc --env -p
[
  {
    "name": "XDG_SESSION_ID",
    "value": "1"
  },
  {
    "name": "HOSTNAME",
    "value": "localhost.localdomain"
  },
  {
    "name": "TERM",
    "value": "vt220"
  },
  {
    "name": "SHELL",
    "value": "/bin/bash"
  },
  {
    "name": "HISTSIZE",
    "value": "1000"
  },
  ...
]

$ env | jc --env -p -r
{
  "TERM": "xterm-256color",
  "SHELL": "/bin/bash",
  "USER": "root",
  "PATH": "/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin",
  "PWD": "/root",
  "LANG": "en_US.UTF-8",
  "HOME": "/root",
  "LOGNAME": "root",
  "_": "/usr/bin/env"
}

info

info()

process

process(proc_data)

Final processing to conform to the schema.

Parameters:

proc_data:   (dictionary) raw structured data to process

Returns:

List of dictionaries. Structured data with the following schema:

[
  {
    "name":     string,
    "value":    string
  }
]

parse

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

Main text parsing function

Parameters:

data:        (string)  text data to parse
raw:         (boolean) output preprocessed JSON if True
quiet:       (boolean) suppress warning messages if True

Returns:

Dictionary of raw structured data or
list of dictionaries of processed structured data