- local var="$(echo -n "$2" | tr -C '[a-zA-Z_]' _)"
- eval "export -- \"$dest=\${${JSON_CUR}_$var}\""
+ local var="${JSON_CUR}_${2//[^a-zA-Z0-9_]/_}"
+ eval "[ -n \"\${$var+x}\" ] && export -- \"$dest=\${$var}\""
+}
+
+json_get_vars() {
+ while [ "$#" -gt 0 ]; do
+ local _var="$1"; shift
+ json_get_var "$_var" "$_var"
+ done