2013-10-23 2 views
1

내가 루프에서 자바 프로그램을 실행하기 위해 몇 가지 스크립트를 수행하는 간단한 배치 파일을 사용하는 것을 시도하고,어떻게 배치 파일을 동적

for %%f IN (*.txt) DO (
    java abc %%f > %%f + "[parsed].txt" 
) 

에서 자바 코드의 라인의 출력의 이름을 지정할 수 있습니다 프로그램은 현재 디렉토리의 모든 텍스트 파일을 읽고 java 프로그램을 실행합니다. 각 파일의 출력을 [parsed]이 추가 된 새 텍스트 파일에 저장하려고합니다. 예 : 입력 텍스트 파일이 test.txt 인 경우 출력은 test[parsed].txt에 저장되어야합니다. 위에 작성된 코드에는 구문 오류가 있으며 변수를 사용하여 해결할 수 없습니다. 도와주세요!

답변

0

무엇이 오류입니까? 배치에서

for %%f IN (*.txt) DO (
    java abc "%%f" >"%%~nf[parsed].txt" 
) 

연결에 대한 +의 필요가 없습니다 : 는 그리고 당신은 오히려 이런 일을해야합니다.

+0

고마워요! 내가 직면 한 한가지 문제는 파일의 이름이'test.txt [parsed]'로 출력된다는 것입니다. 이 문제를 해결할 수있는 방법이 있습니까? –

+0

결과 파일을 의미하는 경우 - 예.'%% ~ nf'을 사용하면 파일 이름 만 가져올 수 있습니다. 내 대답을 편집합니다. 'for /? '를 사용하면 gettable 파일 속성에 대한 자세한 정보를 얻을 수 있습니다. – npocmaka

0
for %%f IN (*.txt) DO (
    java abc "%%f" > "%%~nf[parsed]%%~xf" 
) 
관련 문제