我一直在寻找如何用其他语言来做,我发现我必须使用特殊字符\ b来删除最后一个字符.(how-do-do-do-erase-printed-characters-in-a-console-applicationlinux)
这对于对console.log()的多次调用中的node.js不起作用;
如果我写一个日志:
console.log ("abc\bd");
Run Code Online (Sandbox Code Playgroud)
我得到了结果:abd
但如果我写:
console.log ("abc");
console.log ("\bd");
Run Code Online (Sandbox Code Playgroud)
我得到了结果:
abc
d
我的目标是打印一条等待的消息:
等待
等待.
等待......
等待......
然后再次:
等待
等待.
等等
都在同一条线上.
许多命令行工具实现了基于文本的进度条.像rpm安装一样:
安装############## [45%]
#随着百分比的增长而增长,同时保持一条线.我想要的是类似的东西:我需要一个进度指示器只占一行,也就是说,当百分比增长时,它被覆盖,而不是创建一个新行(\n).
我试过这个:
#include <stdio.h>
int main (){
int i = 0;
for (i = 0; i < 10000; i++){
printf("\rIn progress %d", i/100);
}
printf("\n");
}
Run Code Online (Sandbox Code Playgroud)
\r可以覆盖单行.但是,\r将光标移到行的开头printf并将光标移到末尾,这会导致光标快速波动.你们可以通过一点点编译来感受它.任何人都可以提出替代方案来避免这个问题吗?
我的目标是将更新进度百分比打印到控制台(在 Linux 和 Windows 中)。目前我只是每 10% 打印出百分比,但我更希望它每 1% 更新一次,而不用百分比填充屏幕。
是否可以删除在 PHP 中写入控制台的文本?