2012-05-22 2 views
0

내 ascii 파일의 행에서 파일 이름을 추출하려고합니다..bat 파일을 작성하여 ASCII 파일의 파일 이름을 찾고 변수로 설정

Inputfile input_file.txt 
Outputfile output_file.txt 

내가하고 싶은 것은 개방 examplefile.txt 및 입력 및 출력 파일의 이름을 읽고로 설정 : 파일 examplefile.txt의 라인에서, 나는 다음과 같은 텍스트가 있습니다 변수. 다음 줄의 등가 : 나는 이런 식으로 뭔가를 시도했습니다

Set "INPUTFILE=input_file.txt" 
Set "OUTPUTFILE=output_file.txt" 

, 작동하지 않는 :

for /f "tokens=1*" %%A in (examplefile.txt) do (
set "TEMP=%%A" 
if %TEMP% = "Inputfile" goto :break 
) 
:break 

답변

0

귀하의 접근 방식은 for /f까지 좋아 보인다,하지만 난 아마

을 사용하십시오
for /f "tokens=1*" %%A in (examplefile.txt) do set "%%A=%%B" 

두 개의 변수 %inputfile%%outputfile%이 있어야합니다.

+0

이 솔루션은 완벽합니다. 감사합니다. – Chris

0

FINDSTR을 사용하여 원하지 않는 줄을 필터링하면 성능을 향상시킬 수 있습니다.

for /f "tokens=1*" %%A in ('findstr /r /c:"^Inputfile " /c:"^Outputfile " "examplefile.txt"') do set "%%A=%%B" 
+1

파일에 두 줄 이상이 있다고 가정합니다. 그 질문은 조금 퍼지기도합니다 (잠재적으로 중요한 전제 조건에 대한 슬프게도 대부분의 질문처럼). – Joey

+0

@Joe - Amen to that – dbenham

관련 문제