批处理文件计数器



嗨,我想知道如何使用3位数字格式打印出1到200的列表。我可以打印1到200,但不知道该如何做格式。请帮助

FOR /L %%A IN (1,1,200) DO (ECHO %%A)

您必须在正面设置一个带有足够零的变量,然后拿最后几个字符给出正确的范围。延迟扩展意味着遇到do时不会仅评估使用的变量一次,但是每次使用变量时。

此示例将打印1-200

@echo off
setlocal enabledelayedexpansion
for /l %%a in (1,1,200) do (
set test1=00%%a
set test2=!test1:~-3!
echo !test2!
)
@echo off
title Counter
SET /A XCOUNT=0
:loop
SET /A XCOUNT+=1
IF "%XCOUNT%" == "301" (
    GOTO end
) ELSE (
    IF %XCOUNT% LSS 100 (
        IF %XCOUNT% LSS 10 (
            echo 00%XCOUNT%
            GOTO loop
        ) ELSE (
            echo 0%XCOUNT%
            GOTO loop
        )
    ) ELSE (
    echo %XCOUNT%
    GOTO loop
    )
)
:end
pause

我知道它的冗长,但是,嘿,它有效!

最新更新