#!/bin/bash # must be json as a string, depends on jq get_prop_value () { local value # echo in $1 get $2 value=$(echo $1 | jq -r .$2) echo $value } is_array() { local variable_name=$1 [[ "$(declare -p $variable_name 2>/dev/null)" =~ "declare -a" ]] } filename() { # passed entire path echo $(basename "$1" | rev | cut -f 2- -d '.' | rev) } adirname() { # passed entire path echo "$(cd "$(dirname "$1")" >/dev/null 2>&1 ; pwd -P )" }