>>614
\([0-9.][0-9.]\)*m が入ってしまっているので、

echo "($(echo '1.5h00m' | sed -e 's/\([0-9.][0-9.]\)*h\([0-9.][0-9.]\)*m/\1 * 60 + \2/')) * 60"

とかするしかない

echo "($(echo '1.5h' | sed -e 's/\([0-9.][0-9.]\)*h\(\([0-9.][0-9.]\)*m\)\?/\1 * 60 + \3/')) * 60"

なんてすると、 (1.5 * 60 + ) * 60 になって bc で syntax error