답변:
FOR %%A IN (list) DO command parameters
list 는 공백, 쉼표 또는 세미콜론으로 구분 된 모든 요소의 목록입니다.
명령 은 내부 또는 외부 명령, 배치 파일 또는 OS / 2 및 NT의 경우 명령 목록 일 수 있습니다.
parameters 는 명령에 대한 명령 줄 매개 변수를 포함합니다. 이 예제에서는 지정된 경우 매개 변수를 사용하여 목록의 모든 요소에 대해 명령이 한 번 실행됩니다.
특수한 유형의 매개 변수 (또는 명령)는 %% A이며, 목록에서 각 요소로 연속적으로 대체됩니다.
에서 루프에 대한
FOR /L %x IN (1,1,100) DO ...
[ parameters ]
당신이 당신의 여러 줄에 포함시킬 경우 for
루프
x 번 무언가를하고 싶다면 다음과 같이하십시오 :
예 (x = 200) :
FOR /L %%A IN (1,1,200) DO (
ECHO %%A
)
1,1,200
방법:
유형:
for /?
여러 페이지의 도움말 텍스트가 표시됩니다.
조건부로 명령을 여러 번 수행하십시오.
구문 -FOR- 파일
FOR %%parameter IN (set) DO command
구문 -FOR- 파일 경로에서 루트
FOR /R [[drive:]path] %%parameter IN (set) DO command
구문-폴더
FOR /D %%parameter IN (folder_set) DO command
구문 -FOR- 숫자 목록
FOR /L %%parameter IN (start,step,end) DO command
구문 -FOR- 파일 내용
FOR /F ["options"] %%parameter IN (filenameset) DO command
또는
FOR /F ["options"] %%parameter IN ("Text string to process") DO command
구문 -FOR- 명령 결과
FOR /F ["options"] %%parameter IN ('command to process') DO command
그것
%%G
를 해당 데이터의 일부와 동일하게 만드십시오.배치 프로그램이 아닌 명령 행에서 FOR 명령을 사용하는 경우 %G
대신 1 퍼센트 부호 만 사용하십시오 %%G
.
FOR 매개 변수
첫 번째 매개 변수는 단일 문자 (예 : 문자 G)를 사용하여 정의해야합니다.
FOR %%G IN
...
FOR 루프의 각 반복에서 IN ( ....)
절이 평가되고 %%G
다른 값으로 설정됩니다.
이 절의 결과 단일 값이면 %% G가 해당 값과 동일하게 설정되고 명령이 수행됩니다.
절의 결과로 여러 값이 생성되면 각 매개 변수를 보유하도록 추가 매개 변수가 내재적으로 정의됩니다. 이들은 알파벳 순서로 자동 할당됩니다 %%H %%I %%J
... (암시 적 매개 변수 정의)
매개 변수가 파일을 참조하는 경우 확장 변수 참조를 사용하여 파일 이름 / 경로 / 날짜 / 크기를 추출 할 수 있습니다.
물론 알파벳 이외의 다른 문자를 선택할 수 있습니다 %%G
. 그러나 경로 이름 형식 문자 (a, d, f, n, p, s, t, x)와 충돌하지 않으며 암시 적 매개 변수로 사용하기 위해 가장 긴 비 충돌 문자를 제공하기 때문에 좋은 선택입니다 .
%a%
일반 파일의 이름을 지정? 이 형식으로 도움을주기가 어렵습니다. How to Ask를 읽은 후 언제든지 새로운 질문을하십시오 .
So for example in a reference like %%~fG the %%G is the FOR parameter, and the ~f is the Parameter Expansion.
있어 (여기)이 [ ss64.com/nt/syntax-args.html ), 당신에게 감사합니다. 힘내 친구 야.
이 코드를 사용해보십시오 :
@echo off
color 02
set num1=0
set num2=1
set terminator=5
:loop
set /a num1= %num1% + %num2%
if %num1%==%terminator% goto close
goto open
:close
echo %num1%
pause
exit
:open
echo %num1%
goto loop
num1
는 증가 될 숫자이고 num2
추가 된 값 num1
이고 종결자는 종료되는 값 num1
입니다. 이 문장에서 다른 종결 자 값을 나타낼 수 있습니다 ( if %num1%==%terminator% goto close
). 부울 표현식입니다. 부울이 true 인 경우 goto close는 프로세스이고 부울이 false 인 경우 goto open은 프로세스입니다.
@echo off
echo.
set /p num1=Enter Prelim:
echo.
set /p num2=Enter Midterm:
echo.
set /p num3=Enter Semi:
echo.
set /p num4=Enter Finals:
echo.
set /a ans=%num1%+%num2%+%num3%+%num4%
set /a avg=%ans%/4
ECHO %avg%
if %avg%>=`95` goto true
:true
echo The two numbers you entered were the same.
echo.
pause
exit
에서 FOR /?
도움말 문서 :
FOR % 변수 IN (세트) DO 명령 [명령 매개 변수]
% variable 단일 문자 교체 가능 매개 변수를 지정합니다.
(세트) 하나 이상의 파일 세트를 지정합니다. 와일드 카드가 사용될 수 있습니다. command 각 파일에 대해 수행 할 명령을 지정합니다.
command-parameters
지정된 명령에 대한 매개 변수 또는 스위치를 지정합니다.
배치 프로그램에서 FOR 명령을 사용하려면 % variable 대신 %% variable을 지정
하십시오. 변수 이름은 대소 문자를 구분하므로 % i는
% I 와 다릅니다 .
명령 확장자가 사용 가능한 경우 다음과 같은 추가
형식의 FOR 명령이 지원됩니다.
FOR / D % 변수 IN (set) DO 명령 [명령 매개 변수]
If set contains wildcards, then specifies to match against directory
names instead of file names.
FOR / R [[드라이브 :] 경로] % 변수 IN (세트) DO 명령 [명령 매개 변수]
Walks the directory tree rooted at [drive:]path, executing the FOR
statement in each directory of the tree. If no directory
specification is specified after /R then the current directory is
assumed. If set is just a single period (.) character then it
will just enumerate the directory tree.
FOR / L % 변수 IN (시작, 단계, 종료) DO 명령 [명령 매개 변수]
The set is a sequence of numbers from start to end, by step amount.
So (1,1,5) would generate the sequence 1 2 3 4 5 and (5,-1,1) would
generate the sequence (5 4 3 2 1)