2016-08-03 2 views
1

배치 파일에서 일부 문자열을 읽고 공간에 의해 구분하여 모두 추가하려고합니다. 속성 파일의 내용 인 경우 다음 코드배치 스크립트를 사용하여 문자열을 연결하십시오.

for /F %%x in (C:\dir_1\deploy_build\apps.properties) do (
      set warFiles=%%x%warFiles% 
     ) 
echo %warFiles% 

sz1056 
warFile1 
warFile2 

내가 무엇입니까 출력이 warFile2 하지만 내가 기대하고 출력 내가이 작업을 수행 할 수있는 방법 sz1056 warFile1 warFile2 입니까?

+0

당신은, 여기의 다른'%% X % warFiles %'(루프가 시작되기 전에에서) x''의 현재 값 및 이전을 사용하여 값을 지연 변수 치환이 필요 'warFiles' –

답변

1

당신은 delayed expansion 필요

setlocal enableDelayedExpansion 
for /F %%x in (C:\dir_1\deploy_build\apps.properties) do (
      set "warFiles=%%x !warFiles!" 
     ) 
echo %warFiles% 
+0

작동하지만 예상 출력을 아직 얻지 못하고 있습니다.이 출력은 제가 받고 있습니다 'warFile2 warFile1 sz1056 warFile2warFile2' – viveksinghggits

+0

@viveksinghggits 지금 문제가 있습니까? – npocmaka

+0

내 잘못, 출력 올바른 있지만 시퀀스되지 않습니다. 나는'sz1056 warFile1 warFile2'을 기대하지만'warFile2 warFile1 sz1056'을 출력으로 얻고 있습니다. – viveksinghggits

관련 문제