如何在同一行上重複打印某些內容? 也就是說一個百分比的計數器直到某個過程完成了? 我希望在xterm行上百分比數字不會滾動而倒數。如何打印控制字符
如果我做
puts -nonewline "10%"
puts -nonewline "9%"
puts -nonewline "8%"
puts -nonewline "7%"
我得到:
10%9%8%7%....
這看起來不正確的。
訣竅是什麼?
感謝, 格特
如何在同一行上重複打印某些內容? 也就是說一個百分比的計數器直到某個過程完成了? 我希望在xterm行上百分比數字不會滾動而倒數。如何打印控制字符
如果我做
puts -nonewline "10%"
puts -nonewline "9%"
puts -nonewline "8%"
puts -nonewline "7%"
我得到:
10%9%8%7%....
這看起來不正確的。
訣竅是什麼?
感謝, 格特
你想要回車鍵將光標發送到該行的開頭:
for {set i 10} {$i>0} {incr i -1} {
puts -nonewline [format "\r%2d%%" $i]
flush stdout
after 200
}; puts ""
請記住在輸出字符串的末尾添加一個或多個空格。否則,你最終會得到「10%」,然後「9 %%」,然後「8 %%」等。 – slebetman 2014-09-28 01:57:14
這就是爲什麼我使用'format'和'%2d' – 2014-09-28 02:16:50
可能是'term'包可以幫助? – 2014-09-28 01:50:50