é possível combinar pesquisa variável e substituir por substring
underline() { printf '%s\n%.*s\n' "$1" ${#1} "${1//?/${2:--}}"; }
SAMER SAEID
underline() { printf '%s\n%.*s\n' "$1" ${#1} "${1//?/${2:--}}"; }