배치 파일 형식은 항상 Shell 명령 대신 exe로 사용됩니다. exe 파일 연결을 삭제하고 batfile 연결을 추가하더라도 복용하지 않습니다. 누구든지 나를 도울 수 있습니까?
답변
파일 확장자를로 변경해보십시오 .bat
.
파일 확장자가 보이지 않으면 파일 탐색기를 열고 보기 메뉴 -> 옵션 …으로 이동 한 다음 폴더 옵션 대화 상자 의 보기 탭에서 “알려진 파일 유형의 확장자 숨기기”를 선택 취소하십시오 .
그런 다음 확장명을 변경하십시오. .bat
답변
귀하의 배치 파일 형식은 항상 대신 셸 명령의 EXE로 복용 문은 조금 불분명 한 것으로 보인다.
그러나, 방법에 차이 차별 어떻게 Windows 명령 행 인터프리터 취급 기본이없는 실행 .COM
, .EXE
, .BAT
와 .CMD
.
증명 : 다음 배치 스크립트는 PathExt
환경 변수 의 기본값을 구문 분석하고 및 명령의 .COM;.EXE;.BAT;.CMD
적절한 출력 값을 각각 표시합니다.assoc
ftype
@ECHO OFF
SETLOCAL EnableExtensions
set "parse_ext=%pathext:;=","%"
@for %%G in ("%parse_ext%") do (
@for /F "tokens=1,* delims==" %%H in ('assoc %%G') do (
@for /F "tokens=1,* delims==" %%J in ('ftype %%I') do (
@echo %%H %%I %%K
)
)
)
산출:
==>D:\bat\SU\969327.bat
.COM comfile "%1" %*
.EXE exefile "%1" %*
.BAT batfile "%1" %*
.CMD cmdfile "%1" %*
참고 : PathExt
환경 변수는 운영 체제가 실행 파일로 간주하는 파일 확장자 목록을 리턴합니다 . 확장명이 포함되지 않은 명령 줄을 실행할 때 명령 인터프리터 ( cmd.exe
)는이 환경 변수의 값을 사용하여 어떤 확장을 찾아 어떤 순서로 찾을 지 결정합니다.