2016-10-12 2 views
0

좋아, 내 사진을 내 폴더 구조로 가져 오는 과정을 빠르게하기 위해 배치 파일을 변환하려고했습니다. 이 실제 일괄 처리는 모든 대상 폴더를 원하는대로 만드는 내 VBScript에서 호출되며 변환기를 호출하여 모든 폴더의 각 파일을 폴더 이름과 상관없이 가져옵니다. 그러나 내가 그것을 실행할 때 나는 이상한 결과를 얻는다. 누군가가 나를 도울 수 있기를 바랍니다.Windows 배치 변수들 Cramming Together

@ECHO OFF 

REM DNGConvert.CMD 
REM Converts Raw Files to DNG Files 

REM ----------------------------- 
REM Parameters 
REM ----------------------------- 
REM 1 = Source Drive 
REM 2 = TargetFolder 

REM ----------------------------- 
REM Constants 
REM ----------------------------- 
SET RawFormats=(*.NEF,*.CR2) 
SET DNGLocation=C:\Progra~2\Adobe\DNGConv.exe -p2 -fl -d 

for /r %1 %%i in %RawFormats% do %DNGLocation% %2% " %%i" 

그것은 내가 명령 줄이납니다 실행 ...

C:\Progra~2\Adobe\DNGConv.exe -p2 -fl -d d:\tempi" 

실제로 매우 마지막은 실제 파일 이름이어야 할

. 저를 도울 수있는 사람이 있습니까?

+2

이 '% 2 %'을 (를) '% 2' (이)라고 했습니까? – Squashman

답변

0

스쿼시 맨이 첫 번째 호를 불렀습니다. 입력 매개 변수는 항상 %로 시작하며 둘러싸 지 않습니다. 그래서, %1처럼, 또한 %2.

둘째, 대상 폴더의 경우 입력 방법에 따라 필요하지 않을 수도 있지만 "%~2"을 사용할 수 있습니다. 매개 변수가 항상 한 쌍의 따옴표로 묶여 있음을 보장합니다. . "%%~i"에 대해서도 동일합니다. for /r이 원본 이미지의 경로에 공백이 있으면이 따옴표가 반드시 필요합니다.