0
Windows 일괄 스크립팅을 처음 사용합니다. 텍스트 파일, Ignore.txt 파일에서 값을 가져 와서 로컬 변수로 저장하려고합니다.Windows에서 for 루프의 토큰 값 가져 오기 일괄
명령 파일 :
@Echo off
setlocal enabledelayedexpansion
for /F "tokens=1,2,3" %%i in (Ignore.txt) do (
echo. %%i
echo. %%j
echo. %%k
set value1=%%i
set value2=%%j
set value3=%%k
)
Echo. Value1: !value1!
Echo. Value2: !value2!
Echo. Value3: !value3!
Endlocal
Ignore.txt :
출력 :
*.svc
*.jpg
*.png
그러나 결과는 너무나 잘못된 변수를 인쇄
*.svc
*.jpg
*.png
Value1: *.png
Value2:
Value3:
여기에 잘못된 것이 있으면 도와주세요. 또한이 정보를 검색하는 다른 더 나은 방법에 대한 제안.
파일의 라인은'%% i '에 의해 소비 될 하나의 토큰 만 가지므로'%% j'와'%% k'는 NULL입니다. – CristiFati
@CristiFati, 그렇다면 에코가 제대로 값을 인쇄하고 있습니다. – sunny24365
_Ignore.txt_에는 3 행이 있습니다. 'for' 루프는 3 회 실행되고 매번'echo. %% i'는 화면 상에 출력을 생성하고, 다른 2 개는 (변수가 NULL/empty이기 때문에)'@Echo off'에 의해 억제됩니다. – CristiFati