0
특히 까다로운 배치 스크립팅 요청이 있습니다. 나는 지금이파일을 복사하여 적절한 하위 디렉터리로 이름을 바꿉니다.
/mapcfgs/
/folder 1/
somefile.new
somefile.old
/folder 2/
someotherfile.new
someotherfile.old
/folder 3/
someotherotherfile.new
someotherotherfile.old
/maps/
/folder 1/
somefile.inf
/folder 2/
someotherfile.inf
/folder 3/
someotherotherfile.inf
같은 파일/폴더 구조가, 내가 뭘하려고 오전 A/mapcfgs/(폴더의 이름)를 복사합니다 스크립트/*를 확인하는 것입니다 수 있습니다. /지도/(이름 새를)/* .inf
내가 겪었던 문제는 내가 어떻게 해야할지 모르겠다. 그냥 내 for 문이 찾은 각 파일의 폴더 이름으로 그 인수를 사용해야하기 때문에. 내 사본 진술서.
내 스크립트는 지금까지와 비슷합니다.
@echo off
echo hello
for /f "usebackq tokens=* delims=\" %%a in (`dir /a-d /b /s mapcfgs *.new`) do copy "%%~dpna.new" "maps/%%~na.inf"
echo script finished
그러나 난 그냥 /로 모든 파일을 복사 할 필요가지도 /하지만 파일이 mapcfgs 아래에있는 폴더 이름의 이름에 해당하는 /지도에서 해당 폴더의 이름으로. 아무도 이것으로 나를 도울 수 있습니까?
는 ".. \지도는 \ 폴더 1 폴더 1"' 내가이 '사본과 같은 출력 뭔가를 얻기 위해 노력하고 있어요 때 "'복사"1 \는 *. 새 폴더 " 같은 출력 \ somefile.new "".. \ maps \ folder 1 \ somefile.inf " –
'.new' 파일을'.inf'로하고 싶습니다. 위의 수정을 시도하십시오. – foxidrive
나는 당신의 수정을 시도했고, 계속 진행되고있는 매우 어렴풋이 나타나기 시작했다. 이 스크립트는 명령이 에코 출력에서 올바르게 보이더라도 지정된 파일을 찾을 수 없다는 불평을 계속합니다. 필자는 절대 경로를 사용하여 복사 명령을 변경했습니다. 'copy "C : \ My \ Path \ mapcfgs \ folder와 같은 것을 출력하는'echo % \ dp0mapcfgs \ %% a \ *. new" "% ~ dp0maps \ %% a \ *. * .new ""C : \ My \ Path \ maps \ folder 1 \ *. inf "'실제 명령은 경로를 찾을 수 없다는 오류를 일으켜서 비명 같은 일이 일어나지 않습니다 .. –