From 3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1 Mon Sep 17 00:00:00 2001 From: Kelly Brazil Date: Fri, 15 Nov 2019 09:29:54 -0800 Subject: [PATCH] add examples --- README.md | 31 +++++++++++++++++++++++++++++ jc/parsers/fstab.py | 48 +++++++++++++++++++++++++++++++++++++++------ 2 files changed, 73 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 89d6d0c2..8c7a665c 100755 --- a/README.md +++ b/README.md @@ -70,6 +70,7 @@ jc PARSER [OPTIONS] - `--dig` enables the `dig` parser - `--env` enables the `env` parser - `--free` enables the `free` parser +- `--fstab` enables the `/etc/fstab` parser - `--history` enables the `history` parser - `--hosts` enables the `/etc/hosts` file parser - `--ifconfig` enables the `ifconfig` parser @@ -378,6 +379,36 @@ $ free | jc --free -p } ] ``` +### /etc/fstab +``` +$ cat /etc/fstab | jc --fstab -p +[ + { + "fs_spec": "/dev/mapper/centos-root", + "fs_file": "/", + "fs_vfstype": "xfs", + "fs_mntops": "defaults", + "fs_freq": 0, + "fs_passno": 0 + }, + { + "fs_spec": "UUID=05d927bb-5875-49e3-ada1-7f46cb31c932", + "fs_file": "/boot", + "fs_vfstype": "xfs", + "fs_mntops": "defaults", + "fs_freq": 0, + "fs_passno": 0 + }, + { + "fs_spec": "/dev/mapper/centos-swap", + "fs_file": "swap", + "fs_vfstype": "swap", + "fs_mntops": "defaults", + "fs_freq": 0, + "fs_passno": 0 + } +] +``` ### history ``` $ history | jc --history -p diff --git a/jc/parsers/fstab.py b/jc/parsers/fstab.py index 66c79337..b4a932fa 100644 --- a/jc/parsers/fstab.py +++ b/jc/parsers/fstab.py @@ -5,7 +5,33 @@ Usage: Examples: - + $ cat /etc/fstab | jc --fstab -p + [ + { + "fs_spec": "/dev/mapper/centos-root", + "fs_file": "/", + "fs_vfstype": "xfs", + "fs_mntops": "defaults", + "fs_freq": 0, + "fs_passno": 0 + }, + { + "fs_spec": "UUID=05d927bb-5875-49e3-ada1-7f46cb31c932", + "fs_file": "/boot", + "fs_vfstype": "xfs", + "fs_mntops": "defaults", + "fs_freq": 0, + "fs_passno": 0 + }, + { + "fs_spec": "/dev/mapper/centos-swap", + "fs_file": "swap", + "fs_vfstype": "swap", + "fs_mntops": "defaults", + "fs_freq": 0, + "fs_passno": 0 + } + ] """ import jc.utils @@ -24,15 +50,25 @@ def process(proc_data): [ { - "ip": string, - "hostname": [ - string - ] + "fs_spec": string, + "fs_file": string, + "fs_vfstype": string, + "fs_mntops": string, + "fs_freq": integer, + "fs_passno": integer } ] """ + for entry in proc_data: + int_list = ['fs_freq', 'fs_passno'] + for key in int_list: + if key in entry: + try: + key_int = int(entry[key]) + entry[key] = key_int + except (ValueError): + entry[key] = None - # no additional processing needed return proc_data