home user via users wrote: > f42 workstation. > > I'm trying to prepend a string and multiple spaces to another string. I > can't get it to work. How do I do it? See 3 attempts below. I really do > want multiple spaces between the startstring and the longstring.
You need to quote the arguments to echo if you want to preserve whitespace (essentially, to avoid word splitting). $ echo $BASH_VERSION; s='foo'; s+=' bar'; echo "s = '$s'" 5.2.32(1)-release s = 'foo bar' (I used +=, but that's not relevant here. The important part is to actually quote the output. If you really want double quotes in the output, you can do that more or less as you have, but wrapping the whole string in them too: $ echo $BASH_VERSION; s='foo'; s+=' bar'; echo "s = \"$s\"" 5.2.32(1)-release s = "foo bar" Quoting is generally the way to go. There are times you can avoid it, but when in doubt, use quotes. -- Todd
signature.asc
Description: PGP signature
-- _______________________________________________ users mailing list -- users@lists.fedoraproject.org To unsubscribe send an email to users-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/users@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue