#!/bin/bash # must be json as a string, depends on jq mounted () { mountpoint "$1" &> /dev/null && echo yes || return 1 } # peals back sub-directories until if finds a mountpoint find_mountpoint () { local dir=$1 if [[ ! $dir = "/" ]]; then # echo trying $dir for mountpoint [[ $(mounted $dir) ]] && echo $dir || find_mountpoint "$(dirname $1)" else return 1 fi }