此函数有效,但是我认为必须是一种将所有'/'转换为'\ /'的更优雅的方法(以便随后可以使用标准的' /'代替):
escapeslash() {
val="$1"
fixed=""
while [ 1 ]; do
start=${val%%/*}
remainder=${val#*/}
if [ "${remainder}" = "${val}" ]; then
fixed="${fixed}${start}"
break;
fi
fixed="${fixed}${start}\/"
val="${remainder}"
done
echo "${fixed}"
}