export V=a/b/c.txt; echo ${V##*/}
export V=a/b/c.txt; echo ${V#*/}
export V=a/b/c.txt; echo ${V%%/*}
export V=a/b/c.txt; echo ${V%/*}
export V=hello.txt; echo ${V%.*}
export V=hello.txt; echo ${V##*.}
export V=abc.txt; echo ${V#*.}
export V=; echo "[${V:-d}]"
export V=; echo "[${V-d}]"
export V=; echo "[${V:+x}]"
export V=; echo "[${V+x}]"
export V=; echo "[${V:?msg}]"
unset V; echo "[${V:-d}]"
unset V; echo "[${V-d}]"
unset V; echo "[${V:+x}]"
unset V; echo "[${V+x}]"
unset V; echo "[${V:?msg}]"
export V=hello; echo ${#V}
export V=hello; echo ${V^^}
export V=HELLO; echo ${V,,}
export V=hello; echo ${V^}
export V=HELLO; echo ${V,}
export V=aaa; echo ${V/a/X}
export V=aaa; echo ${V//a/X}
export V=abc; echo ${V/#a/X}
export V=abc; echo ${V/%c/X}
export V=abcdef; echo ${V:2}
export V=abcdef; echo ${V:2:3}
export V=abcdef; echo ${V: -2}
export V=abcdef; echo ${V:1:-1}
export V=; echo ${V:=d}
export V=abc; echo ${V/abc/xyz}
export V=a.c; echo ${V#*.}
export V=abc; echo "[${V:-a b}]"
export V=abc; echo "${V:-a b}"
export V=abc; echo "[${V:-"a b"}]"
export V=abc; echo "${V:-"a b"}"
export V=abc; echo ${V:+x y}
export V=abc; echo "${V:+x y}"
export V=abc.txt; echo ${V%%.*}
export V=abc.txt; echo ${V#*.}
export V=/a/b/c; echo ${V%%/*}
export V=aXbXc; echo ${V//X/-}
export V=abc; echo ${V/b/}
export V=abc; echo ${V//b/}
export V=; echo ${#V}
export V=abc; echo ${V:+set}
export V=abc; echo ${V+set}
