파일을 드래그 할 때 아래 스크립트에서 오류가 발생합니다. 이 오류는 "이 시간에 예상치 못한 오류가 발생했습니다" 행 goto CONTINUE
에 있습니다.배치 스크립트 오류 : "이 시점에서 goto가 예기치 않게 발생했습니다"
나는이 오류가 어떤 경우에는 enabledelayedexpansion을 사용함으로써 방지 될 수 있다고 읽었지만 여기서는 적용되지 않습니다.
또한이 오류는 오류 수준이 설정되지 않은 경우 발생할 수 있음을 읽었습니다. 나는 2 ~ nul pushd가 % ~ 1이 파일 일 때 에러 레벨을 설정하고 있기 때문에, goto FILE im은 cmd/c exit 0 명령을 사용하여 에러 레벨을 재설정하기 전에 발견했다. 이 오류는 여전히 발생하지만 오류 수준을 다시 설정했습니다.
누군가 내 방식의 오류를 지적 할 수 있기를 바랍니다. 감사!
@echo off
set rootDir=%~dp0
cd "%rootDir%"
del BatchTask.log
echo |TIME|FIND /i "current">>BatchTask.log
echo |DATE|FIND /i "current">>BatchTask.log
:CONTINUE
if %1 == "" goto END
set inDir="%~1"
if exist "%~1" (2>nul pushd "%~1" && (popd&goto FOLDER) || (cmd /c exit 0)&goto FILE)
:FILE
set outDir=%~dp1
IF %outDir:~-1%==\ (SET outDir=%outDir:~0,-1%)
goto CONVERT
:FOLDER
set outDir=%~1
goto CONVERT
:CONVERT
set outDir="%outDir%_Out"
shift
"%rootDir%\out\ReleaseWithSymbols\Converter.exe" %inDir% %outDir%
goto CONTINUE
:END
cd "%rootDir%"
echo |TIME|FIND /i "current">>BatchTask.log
echo |DATE|FIND /i "current">>BatchTask.log
난 후, 이동 전화 스크립트를 가지고가는 경우에 실 거예요 (떨어져 무한 루프에서) 문제가있는 그래서 당신이 말한대로 그것이 변화 관련이있을 수 있습니다 것으로 나타났습니다. 그러나 전환은 루핑 동작에 필수적입니다. 검색 후 나는이 변화를 일으키는 원인이 될 수있는 것을 발견하지 못했습니다 :(. 나는 조건에 고토를 넣으려고했지만 도움이되지 않았습니다. "% 1"== ""고토가 아니면 – 0xC0DEFACE
계속 : – mohitj2007
아 도움이되었습니다. % 1 주변에 따옴표가 없습니다. 감사합니다! – 0xC0DEFACE