我正在尝试在变量中累积格式化字符串。类似于:
for i in 1 2 3; do
a="${a} `printf "%-10s %s" "hello" "world"`"
done
但是,当我回显输出时,它不会保留格式,即使我将 -e
或 -n
标志与 echo 命令一起使用也是如此。我应该怎么做?
谢谢
回显时是否引用了变量?如果这样做,您将看到格式已保留。
$ for i in 1 2 3; do a="${a} `printf "%-10s %s" "hello" "world"`"; done
$ echo "$a"
hello world hello world hello world
虽然不引用会破坏格式中的所有内容:
$ echo $a
hello world hello world hello world