1
0
mirror of https://github.com/kellyjonbrazil/jc.git synced 2025-06-19 00:17:51 +02:00

df fix for changing header names when -h used

This commit is contained in:
Kelly Brazil
2019-11-04 12:39:43 -08:00
parent 8934a7d832
commit f7350959c9

View File

@ -3,42 +3,63 @@
Usage:
specify --df as the first argument if the piped input is coming from df
Example:
Examples:
$ df | jc --df -p
[
{
"filesystem": "udev",
"1k-blocks": "977500",
"filesystem": "devtmpfs",
"1k-blocks": 1918820,
"used": 0,
"available": 1918820,
"use_percent": 0,
"mounted": "/dev"
},
{
"filesystem": "tmpfs",
"1k-blocks": 1930668,
"used": 0,
"available": 1930668,
"use_percent": 0,
"mounted": "/dev/shm"
},
{
"filesystem": "tmpfs",
"1k-blocks": 1930668,
"used": 11800,
"available": 1918868,
"use_percent": 1,
"mounted": "/run"
},
...
]
$ df | jc --df -p -r
[
{
"filesystem": "devtmpfs",
"1k-blocks": "1918820",
"used": "0",
"available": "977500",
"available": "1918820",
"use_percent": "0%",
"mounted": "/dev"
},
{
"filesystem": "tmpfs",
"1k-blocks": "201732",
"used": "1204",
"available": "200528",
"use_percent": "1%",
"mounted": "/run"
},
{
"filesystem": "/dev/sda2",
"1k-blocks": "20508240",
"used": "5748312",
"available": "13695124",
"use_percent": "30%",
"mounted": "/"
"1k-blocks": "1930668",
"used": "0",
"available": "1930668",
"use_percent": "0%",
"mounted": "/dev/shm"
},
{
"filesystem": "tmpfs",
"1k-blocks": "1008648",
"used": "0",
"available": "1008648",
"use_percent": "0%",
"mounted": "/dev/shm"
}
"1k-blocks": "1930668",
"used": "11800",
"available": "1918868",
"use_percent": "1%",
"mounted": "/run"
},
...
]
"""
@ -52,7 +73,7 @@ def process(proc_data):
try:
blocks_int = int(entry[k])
entry[k] = blocks_int
except ValueError:
except (ValueError, TypeError):
entry[k] = None
# change 'used' to int
@ -60,7 +81,7 @@ def process(proc_data):
try:
used_int = int(entry['used'])
entry['used'] = used_int
except ValueError:
except (ValueError, TypeError):
entry['used'] = None
# change 'available' to int
@ -68,7 +89,9 @@ def process(proc_data):
try:
available_int = int(entry['available'])
entry['available'] = available_int
except ValueError:
except (ValueError, TypeError):
entry['available'] = None
else:
entry['available'] = None
# remove percent sign from 'use_percent' and change to int
@ -77,7 +100,7 @@ def process(proc_data):
use_percent_int = entry['use_percent'].rstrip('%')
use_percent_int = int(use_percent_int)
entry['use_percent'] = use_percent_int
except ValueError:
except (ValueError, TypeError):
entry['use_percent'] = None
return proc_data