节点.js控制台.log - 是否可以更新行而不是创建新行?

2022-08-30 04:28:21

我的应用程序有很多控制台日志,这对我来说很重要(这是一个相当大的应用程序,所以运行了很长时间,我需要知道事情仍在发展),但我最终会得到数千行控制台日志。node.js

是否可以以某种方式执行擦除/替换控制台行而不是创建新行的操作?console.update


答案 1

尝试在控制台上使用 process.stdout 方法:

process.stdout.write("Hello, World");
process.stdout.clearLine(0);
process.stdout.cursorTo(0);
process.stdout.write("\n"); // end the line

TypeScript:将 -1、0 或 1 作为方向参数,具有以下含义:clearLine()

-1:从光标左侧。
0:整条线。
1 - 从光标向右


答案 2

根据@michelek的答案,您可以使用类似如下的函数:

function printProgress(progress){
    process.stdout.clearLine();
    process.stdout.cursorTo(0);
    process.stdout.write(progress + '%');
}