BAT 파일의 "입력 라인이 너무 깁니다"오류
박쥐 파일을 실행하는 데 문제가 있습니다. 잠시 실행 한 후 "입력 줄이 너무 깁니다"오류가 발생합니다.
bat 파일의 구조는 간단합니다. 내 시스템 모듈의 데이터 업데이트를 담당하는 10 개의 다른 bat 파일을 호출하는 기본 bat 파일이 있습니다. 업데이트 데이터 bat 파일에는 일부 계산을 통해 데이터를 업데이트하는 내 시스템의 명령 (.cmd 파일)에 대한 많은 호출이 있습니다.
요점은 프로세스가 Windows 2003 Server에서 실행 중이었을 때 정상이었습니다. 오류가 없습니다.
그런 다음 Windows 2008 Server로 업그레이드 할 때 기본 bat 파일을 실행하고 몇 시간 후에 "입력 줄이 너무 깁니다."오류가 발생했습니다. 해당 cmd 창에서 업데이트 된 데이터 박쥐에 포함 된 명령을 수동으로 실행할 수도 없습니다. 그러나 cmd 창을 닫고 새 창을 열면 오류없이 명령을 실행할 수 있습니다.
누구도 같은 문제가 있었습니까? 아니면 해결책?
미리 감사드립니다.
cmd 창에서 빌드 스크립트를 실행할 때 이와 동일한 문제가 발생했습니다. 약 13 회 후에 동일한 오류가 발생했습니다. 빌드 스크립트는 매번 vcvarsall.bat를 실행하도록 vcvarsall.bat가 실행되었는지 확인해야했습니다.
vcvarsall.bat는 path
항목이 아직없는 경우 에만 항목을 추가 할 수있을만큼 똑똑 하지 않으므로 많은 중복 항목이 추가되었습니다.
내 솔루션은 vcvarsall.bat에 의해 설정된 환경 변수에 대해 정의 된 경우 검사를 추가하는 것이 었습니다.
if not defined DevEnvDir (
call vcvarsall.bat
)
각 실행 후 경로 환경 변수를 확인하고 증가하는지 확인하십시오. 그것이 있고 중복이 있다면, 당신은 path
. 그것에 대해 현명해질 수있는 몇 가지 방법이 있습니다.
동일한 명령 세트 (애플리케이션 서버 중지 / 시작)를 여러 번 실행 한 후 처음으로이 오류가 발생했습니다.
새 명령 줄을 열고 새 명령 줄 콘솔에서 명령을 시도했을 때 오류가 중지되었습니다.
나는 이것이 꽤 오래되었다는 것을 알고 있지만 내가 만난 또 다른 문제는 내가 "
부르는 명령 끝에 a가 있다는 것 입니다. 나는 전화를 시도했다 :
"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\..\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe""
눈치 채시면 "
줄 끝에 두 개가 있습니다. 이로 인해 문제가 발생했습니다 (따옴표를 입력 할 때 메모장 ++에 포함되었습니다). 모두 제거했습니다. 다시 말하지만, 귀하의 문제가 아닐 수 있지만 다른 사람이 정보를 찾고 있지만 아무것도 작동하지 않으면 이것을 확인하십시오. :)
이 윈도우 기술 자료 문서 이 주제에 대한이. 그들은 Windows 2008 서버에 대해서는 언급하지 않았지만 다른 버전의 OS 간의 크기 차이를 언급 했으므로 2003과 2008 사이에 차이가 있다는 것은 놀라운 일이 아닙니다.
문제에 대한 해결책은 다음과 같습니다.
- 긴 명령 줄이 필요한 프로그램을 수정하여 매개 변수 정보가 포함 된 파일을 사용하도록 한 다음 명령 줄에 파일 이름을 포함합니다.
- 폴더와 파일에 더 짧은 이름을 사용하십시오.
- 폴더 트리의 깊이를 줄이십시오.
그들이 무엇을 말해야하는지 알고 싶다면 전체 기사를 읽을 수 있지만, 당신에게 적용될 가능성이 가장 높은 제안이었습니다.
파일의 공백 (ansi 문자 0x20
)이 실제로 구분되지 않는 공백 인 경우에도 발생할 0xA0
수 있습니다. 이것은 인터넷에서 UTF-8 인식 편집기로 복사 / 붙여 넣기 한 경우 발생할 수 있습니다.
결과는 창의 현재 코드 페이지, 편집기 등에 따라 다릅니다. 고치다:
- 16 진법 편집기 사용
- 공간이 어떻게 표현되는지보세요
- 표현 검색 및 교체
HxD 를 사용 0xA0
하여 0x20
.
나는 이것도 만났다.
나는 다른 사람들이 시도하는 것처럼 vcvars.bat를 실행하려고했습니다.
나에게 근본적인 문제는 내 PATH 변수가 이미 꽤 긴 경로의 반복으로 오염되어 있다는 것입니다. 내 경로를 수정하면 문제가 해결되는 것처럼 보였습니다 (물론 새 터미널에서). 이 수정 사항은 vcvars.bat 또는 Visual Studio 관련 항목에만 국한되지 않습니다.
Cookie Butter의 솔루션이 해결 방법이고 근본적인 문제가 동일한 지 궁금합니다.
참고 URL : https://stackoverflow.com/questions/16821784/input-line-is-too-long-error-in-bat-file
'developer tip' 카테고리의 다른 글
코드에서 내 Scala 앱의 이름과 버전 (SBT에 설정된대로)에 액세스 할 수 있습니까? (0) | 2020.12.12 |
---|---|
Amazon RDS에서 csv 파일로 테이블 내보내기 (0) | 2020.12.12 |
둘 이상의 행 집합이있는 Django 템플릿의 대체 행 색상 지정 (0) | 2020.12.11 |
C # : 이벤트 또는 관찰자 인터페이스? (0) | 2020.12.11 |
PHP & (앰퍼샌드, 비트 및) 연산자 이해 (0) | 2020.12.11 |