Se essas são novas linhas literais nessa variável, você pode fazer:
HOSTNAMES='subvar1
subvar2
subvar3'
(IFS=$'\n'; printf -- "- %s\n" $HOSTNAMES) # variable is unquoted
- subvar1
- subvar2
- subvar3
Se você tiver os caracteres literais \
e n
, isso terá o mesmo resultado:
HOSTNAMES='subvar1\nsubvar2\nsubvar3'
printf "$HOSTNAMES\n" | sed 's/^/- /'