[Home](https://kellyjonbrazil.github.io/jc/)
# jc.parsers.history
jc - JSON CLI output utility `history` command output parser
This parser will output a list of dictionaries each containing `line` and
`command` keys. If you would like a simple dictionary output, then use the
`-r` command-line option or the `raw=True` argument in the `parse()`
function.
The "Magic" syntax is not supported since the `history` command is a shell
builtin.
Usage (cli):
$ history | jc --history
Usage (module):
import jc
result = jc.parse('history', history_command_output)
or
import jc.parsers.history
result = jc.parsers.history.parse(history_command_output)
Schema:
[
{
"line": integer,
"command": string
}
]
**Examples**:
$ history | jc --history -p
[
{
- `"line"` - 118,
- `"command"` - "sleep 100"
},
{
- `"line"` - 119,
- `"command"` - "ls /bin"
},
{
- `"line"` - 120,
- `"command"` - "echo \"hello\""
},
{
- `"line"` - 121,
- `"command"` - "docker images"
},
...
]
$ history | jc --history -p -r
{
- `"118"` - "sleep 100",
- `"119"` - "ls /bin",
- `"120"` - "echo \"hello\"",
- `"121"` - "docker images",
...
}
## info Objects
```python
class info()
```
Provides parser metadata (version, author, etc.)
#### parse
```python
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 of raw structured data or
List of Dictionaries of processed structured data
## Parser Information
Compatibility: linux, darwin, cygwin, aix, freebsd
Version 1.6 by Kelly Brazil (kellyjonbrazil@gmail.com)