有什么方法可以在特定位置打印参数? 我尝试使用以下命令,但每个参数都取决于上一个。
puts [format "%0s%20s%30s%40s" $check $runtime $cpus $result]
这意味着如果$ check为长名,则所有其他数据将相应地移位。 有什么方法可以确定放置var的特定位置吗?
答案 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