【发布时间】:2014-05-07 21:23:08
【问题描述】:
我可以在循环中使用 echo 打印我的数组元素,但输出格式非常糟糕。在那里我尝试注入制表符,但元素之间只有很多空格,因为每个元素的长度都不同。我不知道如何使用 printf ?我试过了,但它只是不能正常工作。有没有办法格式化我的 printf 或 echo 以便每个元素之间有相等数量的空格?这让我发疯。
while [[ $counter -lt $nai ]];
do
#echo ${slist[$counter]} $'\t' ${sstate[$counter]} $'\t' $'\t' ${scached[$counter]}
printf ${slist[$counter]} $'\t' ${sstate[$counter]} $'\t' $'\t' ${scached[$counter]}
counter=$(( $counter + 1 ))
done
简而言之,我只想以这样的元素之间具有相同数量空格的格式打印我的元素
abc cdf efg
我得到的是
abc cdf efg
谢谢
【问题讨论】:
-
也许这会对你有所帮助:How to trim whitespace from bash variable ?
-
@Martin
"your print statement" | tr -s ' ' ' '检查这是否有效