jshn.sh: Add pretty-printing to json_dump
If a JSON file might be read by a human, say for debugging, it could be useful to pretty-print it. We do this in places by calling "json_dump -i" but it shouldn't be necessary to know the arguments to "jshn" (and indeed, that's not portable if we retool the underlying implementation). Conversely output that's ephemeral doesn't need to be pretty (say being piped as input to another command). Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
This commit is contained in:
parent
ef5e8e38bd
commit
6fc29d1c42
1 changed files with 11 additions and 1 deletions
12
sh/jshn.sh
12
sh/jshn.sh
|
@ -199,6 +199,16 @@ json_add_fields() {
|
||||||
|
|
||||||
# functions read access to json variables
|
# functions read access to json variables
|
||||||
|
|
||||||
|
json_compact() {
|
||||||
|
JSON_NONEWLINE=1
|
||||||
|
JSON_INDENT=
|
||||||
|
}
|
||||||
|
|
||||||
|
json_pretty() {
|
||||||
|
JSON_NONEWLINE=
|
||||||
|
JSON_INDENT=1
|
||||||
|
}
|
||||||
|
|
||||||
json_load() {
|
json_load() {
|
||||||
eval "`jshn -r "$1"`"
|
eval "`jshn -r "$1"`"
|
||||||
}
|
}
|
||||||
|
@ -208,7 +218,7 @@ json_load_file() {
|
||||||
}
|
}
|
||||||
|
|
||||||
json_dump() {
|
json_dump() {
|
||||||
jshn "$@" ${JSON_PREFIX:+-p "$JSON_PREFIX"} -w
|
jshn "$@" ${JSON_PREFIX:+-p "$JSON_PREFIX"} ${JSON_NONEWLINE:+-n} ${JSON_INDENT:+-i} -w
|
||||||
}
|
}
|
||||||
|
|
||||||
json_get_type() {
|
json_get_type() {
|
||||||
|
|
Loading…
Reference in a new issue