2017-12-07 14 views
0

최근에 작은 배치 파일을 만들어 지정된 디렉토리의 모든 파일을 나열했습니다. 파일을 실행하면 모든 파일을 성공적으로 txt로 만듭니다. 그러나 명령 프롬프트에서 실행하면 File Not Found도 인쇄됩니다.배치 - 성공적인 dir 문 인쇄 파일을 찾을 수없는 이유는 무엇입니까?

dir ".\builds\dev-versions" /b /o:d *.jar > devFiles.txt 

이 문제의 원인은 무엇입니까?

+0

시작 디렉토리가 다릅니다. 항상 FULL PATHS를 사용합니다. – ACatInLove

+0

파일 경로와 그와 같은 파일 이름을 나눠서 사용하지 않았습니까? – Squashman

+0

'dir '. \ builds \ dev-versions \ *. jar "/ b/o : d> devFiles.txt' 또는 약간 더 짧은'dir"을 \ dev-versions \ *. "/ b/o : d> devFiles.txt'를 사용하여 현재 디렉토리의'builds \ dev-versions' 하위 디렉토리에있는 모든 * .jar 파일 목록을 가져옵니다. 그러나 __DIR__을 실행하여'builds \ dev-versions' 하위 디렉토리에있는 모든 파일 목록과 현재 디렉토리에있는 모든'* .jar' 파일 목록을 얻었습니다. 현재 디렉토리에서 * .jar 파일 검색이 실패합니다. 이 명령에 대한 도움말은 명령 프롬프트 창'dir /? '에서 실행하십시오. – Mofi

답변

1

귀하의 dir 명령을 두 번 실행해야합니다 - 그것은 현재의 .jar 모든 파일 목록을 모두 지명 디렉토리해야하고 그래서 한 번 인수 ".\builds\dev-versions"*.jar

.의 각각은 "현재 디렉토리"를 의미한다 예배 규칙서. 두 목록 중 하나라도 비어 있으면 file nor found 오류가 표시됩니다.

코드가 무엇을 시도하는지 알려주지 않으므로 구제 조치를 제안하는 데 제한이 있습니다. 2>nul을 첨부하면 오류 보고서가 삭제 될 수 있습니다.