1
0
mirror of https://github.com/kellyjonbrazil/jc.git synced 2025-06-17 00:07:37 +02:00
Files
jc/docs/parsers/group.md

142 lines
2.5 KiB
Markdown
Raw Normal View History

2020-03-03 09:07:09 -08:00
# jc.parsers.group
jc - JSON CLI output utility /etc/group file Parser
Usage:
specify --group as the first argument if the piped input is coming from /etc/group
Compatibility:
'linux', 'darwin', 'aix', 'freebsd'
Examples:
$ cat /etc/group | jc --group -p
[
{
"group_name": "nobody",
"password": "*",
"gid": -2,
"group_list": []
},
{
"group_name": "nogroup",
"password": "*",
"gid": -1,
"group_list": []
},
{
"group_name": "wheel",
"password": "*",
"gid": 0,
"group_list": [
"root"
]
},
{
"group_name": "certusers",
"password": "*",
"gid": 29,
"group_list": [
"root",
"_jabber",
"_postfix",
"_cyrus",
"_calendar",
"_dovecot"
]
},
...
]
$ cat /etc/group | jc --group -p -r
[
{
"group_name": "nobody",
"password": "*",
"gid": "-2",
"group_list": [
""
]
},
{
"group_name": "nogroup",
"password": "*",
"gid": "-1",
"group_list": [
""
]
},
{
"group_name": "wheel",
"password": "*",
"gid": "0",
"group_list": [
"root"
]
},
{
"group_name": "certusers",
"password": "*",
"gid": "29",
"group_list": [
"root",
"_jabber",
"_postfix",
"_cyrus",
"_calendar",
"_dovecot"
]
},
...
]
## info
```python
info(self, /, *args, **kwargs)
```
## process
```python
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:
[
{
"group_name": string,
"password": string,
"gid": integer,
"group_list": [
string
]
}
]
## parse
```python
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:
List of dictionaries. Raw or processed structured data.