コマンドラインのツールつくるときとかに、ダウンロード中の進捗をパーセントで表示したかったんだけど、表示をクリアして再描画する方法がわからなかったので調べた。
\r
で現在の行をクリアできるらしい。追記:行のクリアじゃなかった。コメント参照
rubyなら
100.times do |num|
print "working... #{num}%\r"
sleep 0.05
STDOUT.flush
end
Node.jsだと
var i = 0;
setInterval(function() {
process.stdout.write('working... ' + i + '%\r');
i++;
if (i === 100) process.exit();
}, 50);
こんな感じになる。