繁体   English   中英

使用批处理回显以某种方式显示输出

[英]Display output in a certain way using echo of batch

我正在使用批处理程序,该程序从文本文件读取根目录,并计算所有提供根目录的文件夹文件的总数。 该程序可以正常工作,但是我想以某种方式显示输出。

这就是我要显示输出的方式

在此处输入图片说明

0:OF:6

每当程序在一个根目录中完成计数时,第一个值应更改。 我已经为此编写了代码,但是我得到的输出是这个。

在此处输入图片说明

这是我编写的更改代码。

:textUpdate
echo !counter! : OF : %number%
GOTO :EOF

其中counter是根目录的当前数目, number是在文本文件中找到的目录总数。 有没有办法像第一个一样显示输出。

您可以滥用set /p写入屏幕。 它不会附加换行符。 您还需要回车以返回到行的开头以覆盖旧的输出:

@echo off
setlocal EnableDelayedExpansion
for /f %%a in ('copy /Z "%~dpf0" nul') do set "CR=%%a"
for /l %%n in (1,1,6) do (
    set /P "=Count %%n of 6!CR!" <nul
    timeout 1 >nul
)

第一个for /f循环只是为了获得CR (回车)。 您必须使用延迟扩展才能使用它( %CR%不起作用)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM