Windows: 명령줄에서 배치 파일을 재귀적으로 검색하고 실행합니다.

Windows: 명령줄에서 배치 파일을 재귀적으로 검색하고 실행합니다.

중첩된 폴더가 있는 프로젝트가 있습니다.

"build.bat" 파일이 발견될 때까지 디렉토리를 재귀적으로 찾아 실행하고 싶습니다.

명령줄에서 이 작업을 어떻게 수행할 수 있나요? (즉, 배치 파일 자체가 아닙니다).

배경(선택 사항): vim의 컴파일러 및 makeprg 설정을 활용하여 프로젝트 어딘가에 있는 빌드 파일을 실행하고 출력을 빠른 팁으로 리디렉션하려고 합니다.

답변1

특정 프로젝트 루트 폴더가 d:\Remote현재 작업 디렉터리라고 가정합니다. 그런 다음 (명령 프롬프트 창에서 복사하여 붙여넣기):

d:\Remote>for /F "delims=" %G in ('dir /b /s build.bat') do @echo "%~G"
"d:\Remote\bat\test\build.bat"

그러면 간단하게 제거할 수 있습니다 @echo...

다른 작업 디렉토리에 있는 경우:

d:\bat>for /F "delims=" %G in ('dir /b /s "d:\Remote\build.bat"') do @echo "%~G"
"d:\Remote\bat\test\build.bat"

메모하나 이상의 파일을 찾을 수 있습니다. 제거 되면 @echo발견된 모든 항목이 실행됩니다.

d:\Remote>for /F "delims=" %G in ('dir /b /s cdn.bat') do @echo "%~G"
"d:\Remote\bat\cdn.bat"
"d:\Remote\bat\test\cdn.bat"

자원(필수 읽기):

관련 정보