Expected Output
/usr/bin
$HOME/.local/bin
$HOME/.local/a/bin
$HOME/.local/b/bin
$HOME/.local/c/bin
$HOME/.local/d/bin
| #!/bin/sh | |
| set -e | |
| set -u | |
| fn_replace_home() { | |
| my_path="${1}" | |
| my_delim="$( | |
| printf '\v' | |
| )" | |
| my_path="$( | |
| echo "${my_path}" | | |
| sed "s${my_delim}${HOME}${my_delim}\$HOME${my_delim}g" | | |
| sed "s${my_delim}\${HOME}${my_delim}\$HOME${my_delim}g" | | |
| sed "s${my_delim}^~${my_delim}\$HOME${my_delim}g" | |
| )" | |
| echo "${my_path}" | |
| } | |
| fn_replace_home /usr/bin | |
| fn_replace_home ~/.local/bin | |
| fn_replace_home "${HOME}/.local/xbin" |
Expected Output
/usr/bin
$HOME/.local/bin
$HOME/.local/a/bin
$HOME/.local/b/bin
$HOME/.local/c/bin
$HOME/.local/d/bin