echo删除Bash变量中的前导空格

fit*_*oee 1 bash shell quoting

新手在这里打击.我希望在bash中为一个变量添加一个空格,目前我有以下内容,它似乎不起作用:

space=`printf '%1s' ' '`
mystr='hello'

mystr="$space$mystr"
echo $mystr
Run Code Online (Sandbox Code Playgroud)

因此,我不希望打印出"hello",而是希望结果是"hello",它在开头有一个额外的空格.这样做的正确方法是什么?谢谢.

cod*_*ter 6

由于分词,shell将删除前导空格.将您的变量用双引号括起来禁用单词拆分:

echo "$mystr"
Run Code Online (Sandbox Code Playgroud)

看到这篇文章:我刚刚分配了一个变量,但echo $ variable显示了其他内容

请参阅这些文档:Word拆分字段拆分

  • 非常感谢你. (2认同)