有人可以帮助我理解printf的对齐功能。我曾尝试阅读关于Stack和一般Google结果的几个示例,但我仍然无法理解其语法。这里基本上是我想要实现:printf列对齐问题
HOLDING 1.1.1.1 Hostname Potential outage!
SKIPPING 1:1:1:1:1:1:1:1 Hostname Existing outage!
我很抱歉,我知道这是一个更比施舍我平常的问题的。我真的不知道如何从这里开始。我曾尝试在过去使用echo -e“\ t”,它适用于水平放置,但不对齐。我还使用for循环引入了一个更加复杂的tcup解决方案,但在这种情况下这不会轻松工作。
我刚刚发现了printf的功能,看起来它会做我需要的,但我不明白这个语法。也许这样?
A="HOLDING"
B="1.1.1.1"
C="Hostname"
D="Potential outage"
for ((j=1; j<=10; j++)); do
printf "%-10s" $A $B $C $D
echo "\n"
done
这些变量将从一个数据库喂入,但是。我仍然不明白printf语法?请帮助
*也*
题外话的问题,你有什么应对的激励?我对堆栈交换相当陌生。除了声誉之外,你们有没有得到任何东西?职业2.0?或者是其他东西?有些人在这个网站有荒谬的统计资料。只是好奇驱动器是什么。
关于声誉的问题最好在[Meta Stack Overflow](http://meta.stackoverflow.com/)网站上提问。回应的动机是声誉,以及帮助他人的满意度。有些人可能因为在SO上拥有很高的声誉而获得了新的工作机会,但这不是一个追求新工作的可靠方式。 –
还有其他论坛,人们互相帮助。 comp.lang。* usenet组和像javaranch.com这样的网站。在我看来,声誉是非常巧妙和无价的。缺乏声誉,你会减少接听和巡逻的人,而且你也会得到不同类型的“答案”,如其他论坛所见。它通常以“你想做什么”开头。在他们回答你的问题之前,你会从一个语言知情者的角度得到一个演讲。你可能只会听讲座。声誉将它变成一场竞赛,演讲部分将尽量减少。 – Scooter