2021-03-25 16:45:30 -04:00
|
|
|
|
|
|
|
# jc.parsers.dir
|
|
|
|
jc - JSON CLI output utility `dir` command output parser
|
|
|
|
|
|
|
|
Options supported:
|
|
|
|
- `/T timefield`
|
|
|
|
- `/O sortorder`
|
|
|
|
- `/C, /-C`
|
2021-04-02 11:16:03 -07:00
|
|
|
- `/S`
|
2021-03-25 16:45:30 -04:00
|
|
|
|
2021-04-02 12:01:39 -07:00
|
|
|
The `epoch` calculated timestamp field is naive (i.e. based on the local time of the system the parser is run on)
|
|
|
|
|
2021-03-25 16:45:30 -04:00
|
|
|
Usage (cli):
|
|
|
|
|
2021-04-07 11:18:33 -07:00
|
|
|
C:> dir | jc --dir
|
2021-03-25 16:45:30 -04:00
|
|
|
|
|
|
|
or
|
|
|
|
|
2021-04-07 11:18:33 -07:00
|
|
|
C:> jc dir
|
2021-03-25 16:45:30 -04:00
|
|
|
|
|
|
|
Usage (module):
|
|
|
|
|
|
|
|
import jc.parsers.dir
|
|
|
|
result = jc.parsers.dir.parse(dir_command_output)
|
|
|
|
|
2021-04-08 12:42:01 -07:00
|
|
|
Schema:
|
|
|
|
|
|
|
|
[
|
|
|
|
{
|
|
|
|
"date": string,
|
|
|
|
"time": string,
|
|
|
|
"epoch": integer, # naive timestamp
|
|
|
|
"dir": boolean,
|
|
|
|
"size": integer,
|
|
|
|
"filename: string,
|
|
|
|
"parent": string
|
|
|
|
}
|
|
|
|
]
|
|
|
|
|
2021-03-25 16:45:30 -04:00
|
|
|
Compatibility:
|
|
|
|
|
|
|
|
'win32'
|
|
|
|
|
|
|
|
Examples:
|
|
|
|
|
2021-04-07 11:18:33 -07:00
|
|
|
C:> dir | jc --dir -p
|
2021-04-02 12:01:39 -07:00
|
|
|
[
|
|
|
|
{
|
|
|
|
"date": "03/24/2021",
|
|
|
|
"time": "03:15 PM",
|
|
|
|
"dir": true,
|
|
|
|
"size": null,
|
|
|
|
"filename": ".",
|
|
|
|
"parent": "C:\Program Files\Internet Explorer",
|
|
|
|
"epoch": 1616624100
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"date": "03/24/2021",
|
|
|
|
"time": "03:15 PM",
|
|
|
|
"dir": true,
|
|
|
|
"size": null,
|
|
|
|
"filename": "..",
|
|
|
|
"parent": "C:\Program Files\Internet Explorer",
|
|
|
|
"epoch": 1616624100
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"date": "12/07/2019",
|
|
|
|
"time": "02:49 AM",
|
|
|
|
"dir": true,
|
|
|
|
"size": null,
|
|
|
|
"filename": "en-US",
|
|
|
|
"parent": "C:\Program Files\Internet Explorer",
|
|
|
|
"epoch": 1575715740
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"date": "12/07/2019",
|
|
|
|
"time": "02:09 AM",
|
|
|
|
"dir": false,
|
|
|
|
"size": 54784,
|
|
|
|
"filename": "ExtExport.exe",
|
|
|
|
"parent": "C:\Program Files\Internet Explorer",
|
|
|
|
"epoch": 1575713340
|
|
|
|
},
|
|
|
|
...
|
|
|
|
]
|
|
|
|
|
2021-04-07 11:18:33 -07:00
|
|
|
C:> dir | jc --dir -p -r
|
2021-04-02 12:01:39 -07:00
|
|
|
[
|
|
|
|
{
|
|
|
|
"date": "03/24/2021",
|
|
|
|
"time": "03:15 PM",
|
|
|
|
"dir": true,
|
|
|
|
"size": null,
|
|
|
|
"filename": ".",
|
|
|
|
"parent": "C:\Program Files\Internet Explorer"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"date": "03/24/2021",
|
|
|
|
"time": "03:15 PM",
|
|
|
|
"dir": true,
|
|
|
|
"size": null,
|
|
|
|
"filename": "..",
|
|
|
|
"parent": "C:\Program Files\Internet Explorer"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"date": "12/07/2019",
|
|
|
|
"time": "02:49 AM",
|
|
|
|
"dir": true,
|
|
|
|
"size": null,
|
|
|
|
"filename": "en-US",
|
|
|
|
"parent": "C:\Program Files\Internet Explorer"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"date": "12/07/2019",
|
|
|
|
"time": "02:09 AM",
|
|
|
|
"dir": false,
|
|
|
|
"size": "54,784",
|
|
|
|
"filename": "ExtExport.exe",
|
|
|
|
"parent": "C:\Program Files\Internet Explorer"
|
|
|
|
},
|
|
|
|
...
|
|
|
|
]
|
2021-03-25 16:45:30 -04:00
|
|
|
|
|
|
|
|
|
|
|
## info
|
|
|
|
```python
|
|
|
|
info()
|
|
|
|
```
|
2021-04-08 12:42:01 -07:00
|
|
|
Provides parser metadata (version, author, etc.)
|
2021-03-25 16:45:30 -04:00
|
|
|
|
|
|
|
## 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.
|
|
|
|
|