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

165 lines
2.6 KiB
Markdown
Raw Normal View History

[Home](https://kellyjonbrazil.github.io/jc/)
2022-01-25 17:07:47 -08:00
<a id="jc.parsers.lsof"></a>
2020-07-30 16:20:24 -07:00
2019-11-11 18:30:46 -08:00
# jc.parsers.lsof
2022-01-25 17:07:47 -08:00
2020-08-05 16:51:58 -07:00
jc - JSON CLI output utility `lsof` command output parser
2019-11-11 18:30:46 -08:00
2020-08-05 13:32:59 -07:00
Usage (cli):
2019-12-12 09:47:14 -08:00
2022-01-25 17:07:47 -08:00
$ lsof | jc --lsof
2020-08-05 16:51:58 -07:00
2022-01-25 17:07:47 -08:00
or
2020-08-05 16:51:58 -07:00
2022-01-25 17:07:47 -08:00
$ jc lsof
2019-11-11 18:30:46 -08:00
2020-08-05 13:32:59 -07:00
Usage (module):
2022-01-25 17:07:47 -08:00
import jc
result = jc.parse('lsof', lsof_command_output)
2022-01-18 15:38:03 -08:00
2022-01-25 17:07:47 -08:00
or
2022-01-18 15:38:03 -08:00
2022-01-25 17:07:47 -08:00
import jc.parsers.lsof
result = jc.parsers.lsof.parse(lsof_command_output)
2020-08-05 13:32:59 -07:00
2021-04-08 15:52:49 -07:00
Schema:
2022-01-25 17:07:47 -08:00
[
{
"command": string,
"pid": integer,
"tid": integer,
"user": string,
"fd": string,
"type": string,
"device": string,
"size_off": integer,
"node": integer,
"name": string
}
]
**Examples**:
$ sudo lsof | jc --lsof -p
[
{
- `"command"` - "systemd",
- `"pid"` - 1,
- `"tid"` - null,
- `"user"` - "root",
- `"fd"` - "cwd",
- `"type"` - "DIR",
- `"device"` - "253,0",
- `"size_off"` - 224,
- `"node"` - 64,
- `"name"` - "/"
},
{
- `"command"` - "systemd",
- `"pid"` - 1,
- `"tid"` - null,
- `"user"` - "root",
- `"fd"` - "rtd",
- `"type"` - "DIR",
- `"device"` - "253,0",
- `"size_off"` - 224,
- `"node"` - 64,
- `"name"` - "/"
},
{
- `"command"` - "systemd",
- `"pid"` - 1,
- `"tid"` - null,
- `"user"` - "root",
- `"fd"` - "txt",
- `"type"` - "REG",
- `"device"` - "253,0",
- `"size_off"` - 1624520,
- `"node"` - 50360451,
- `"name"` - "/usr/lib/systemd/systemd"
},
...
]
$ sudo lsof | jc --lsof -p -r
[
{
- `"command"` - "systemd",
- `"pid"` - "1",
- `"tid"` - null,
- `"user"` - "root",
- `"fd"` - "cwd",
- `"type"` - "DIR",
- `"device"` - "8,2",
- `"size_off"` - "4096",
- `"node"` - "2",
- `"name"` - "/"
},
{
- `"command"` - "systemd",
- `"pid"` - "1",
- `"tid"` - null,
- `"user"` - "root",
- `"fd"` - "rtd",
- `"type"` - "DIR",
- `"device"` - "8,2",
- `"size_off"` - "4096",
- `"node"` - "2",
- `"name"` - "/"
},
{
- `"command"` - "systemd",
- `"pid"` - "1",
- `"tid"` - null,
- `"user"` - "root",
- `"fd"` - "txt",
- `"type"` - "REG",
- `"device"` - "8,2",
- `"size_off"` - "1595792",
- `"node"` - "668802",
- `"name"` - "/lib/systemd/systemd"
},
...
]
<a id="jc.parsers.lsof.info"></a>
## info Objects
2019-12-14 23:35:42 -08:00
```python
2022-01-25 17:07:47 -08:00
class info()
2019-12-14 23:35:42 -08:00
```
2022-01-25 17:07:47 -08:00
2021-04-08 15:52:49 -07:00
Provides parser metadata (version, author, etc.)
2020-07-30 16:20:24 -07:00
2022-01-25 17:07:47 -08:00
<a id="jc.parsers.lsof.parse"></a>
#### parse
2019-11-11 18:30:46 -08:00
```python
2022-01-25 17:07:47 -08:00
def parse(data, raw=False, quiet=False)
2019-11-11 18:30:46 -08:00
```
2019-11-12 11:18:00 -08:00
Main text parsing function
2019-11-11 18:30:46 -08:00
2022-01-25 17:07:47 -08:00
**Arguments**:
2019-11-11 18:30:46 -08:00
2022-01-25 17:07:47 -08:00
- `data` - (string) text data to parse
- `raw` - (boolean) unprocessed output if True
- `quiet` - (boolean) suppress warning messages if True
2019-11-12 11:18:00 -08:00
2022-01-25 17:07:47 -08:00
**Returns**:
2019-11-12 11:18:00 -08:00
2022-01-25 17:07:47 -08:00
List of Dictionaries. Raw or processed structured data.
2019-11-11 18:30:46 -08:00
## Parser Information
Compatibility: linux
2021-12-01 16:12:51 -08:00
Version 1.5 by Kelly Brazil (kellyjonbrazil@gmail.com)