批处理文件柜台

时间:2012-10-24 19:52:43

标签: batch-file

嗨我想知道怎样用3位数格式打印1到200的列表。我可以从1到200打印,但不知道如何做格式的事情。请帮忙

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

2 个答案:

答案 0 :(得分:4)

您必须在前面设置一个具有足够零的变量,然后取最后几个字符以给出正确的范围。延迟扩展意味着在遇到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!
)

答案 1 :(得分:3)

@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

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