在特定位置TCL打印

时间:2019-10-15 11:10:00

标签: tcl

有什么方法可以在特定位置打印参数? 我尝试使用以下命令,但每个参数都取决于上一个。

puts [format "%0s%20s%30s%40s" $check $runtime $cpus $result]

这意味着如果$ check为长名,则所有其他数据将相应地移位。 有什么方法可以确定放置var的特定位置吗?

1 个答案:

答案 0 :(得分:1)

您没有说明当字符串太长而无法容纳分配的空间时如何解决该情况。假设您要截断字符串的尾部,可以指定最大长度:

puts [format %-10.9s%-10.9s%-10.9s%-10.9s $check $runtime $cpus $result]

-将锚定字符串到左侧,10指定字段宽度,9限制打印的字符数。

演示:

set check "longcheckname"
set runtime "forever"
set cpus "all"
set result "passed"
puts [format %-10.9s%-10.9s%-10.9s%-10.9s $check $runtime $cpus $result]

结果:

longcheck forever all passed