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,
|
2020-03-03 09:32:56 -08:00
|
|
|
"members": []
|
2020-03-03 09:07:09 -08:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"group_name": "nogroup",
|
|
|
|
"password": "*",
|
|
|
|
"gid": -1,
|
2020-03-03 09:32:56 -08:00
|
|
|
"members": []
|
2020-03-03 09:07:09 -08:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"group_name": "wheel",
|
|
|
|
"password": "*",
|
|
|
|
"gid": 0,
|
2020-03-03 09:32:56 -08:00
|
|
|
"members": [
|
2020-03-03 09:07:09 -08:00
|
|
|
"root"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"group_name": "certusers",
|
|
|
|
"password": "*",
|
|
|
|
"gid": 29,
|
2020-03-03 09:32:56 -08:00
|
|
|
"members": [
|
2020-03-03 09:07:09 -08:00
|
|
|
"root",
|
|
|
|
"_jabber",
|
|
|
|
"_postfix",
|
|
|
|
"_cyrus",
|
|
|
|
"_calendar",
|
|
|
|
"_dovecot"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
...
|
|
|
|
]
|
|
|
|
|
|
|
|
$ cat /etc/group | jc --group -p -r
|
|
|
|
[
|
|
|
|
{
|
|
|
|
"group_name": "nobody",
|
|
|
|
"password": "*",
|
|
|
|
"gid": "-2",
|
2020-03-03 09:32:56 -08:00
|
|
|
"members": [
|
2020-03-03 09:07:09 -08:00
|
|
|
""
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"group_name": "nogroup",
|
|
|
|
"password": "*",
|
|
|
|
"gid": "-1",
|
2020-03-03 09:32:56 -08:00
|
|
|
"members": [
|
2020-03-03 09:07:09 -08:00
|
|
|
""
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"group_name": "wheel",
|
|
|
|
"password": "*",
|
|
|
|
"gid": "0",
|
2020-03-03 09:32:56 -08:00
|
|
|
"members": [
|
2020-03-03 09:07:09 -08:00
|
|
|
"root"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"group_name": "certusers",
|
|
|
|
"password": "*",
|
|
|
|
"gid": "29",
|
2020-03-03 09:32:56 -08:00
|
|
|
"members": [
|
2020-03-03 09:07:09 -08:00
|
|
|
"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,
|
2020-03-03 09:32:56 -08:00
|
|
|
"members": [
|
2020-03-03 09:07:09 -08:00
|
|
|
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.
|
|
|
|
|