배치에서 : 경로와 파일 이름이있는 변수의 파일 이름 만 읽으십시오.

StackOverflow https://stackoverflow.com/questions/454670

  •  19-08-2019
  •  | 
  •  

문제

현재 배치 변수를 취하고 파일 이름 만 구문 분석 할 수있는 방법을 찾고 있습니다.

예를 들어, 다른 응용 프로그램에서 배치 파일 A -S 매개 변수를 전달하여 이후에 소스 변수로 설정됩니다. 소스 파일 변수는 일반적으로 다음과 같은 것을 포함합니다.

나는 변수의 끝에서 첫 번째 ""까지 읽고 결과를 새로운 변수 파일 이름으로 설정했지만 "for /f"commmand를 성공적으로 사용할 수 없었습니다.

어떤 도움이든 대단히 감사하겠습니다!

업데이트 : 표준 XP 또는 Windows 2000/2003 만 사용할 수 있습니다 ... (리소스 키트가 설치 될 수 없음).

도움이 되었습니까?

해결책

스크립트에 대한 인수, 즉 %1, %2 등이있는 경우 파일 이름과 확장자 만 다음과 같은 변수로 추출 할 수 있습니다.

set FILENAME=%~nxN

여기서 n은 인수의 색인입니다. 예를 들어,이 스크립트는 첫 번째 인수의 파일 이름 만 반전됩니다.

@echo off
set FILENAME=%~nx1
echo %FILENAME%

다른 팁

약간 개선 된 버전 :

set FILENAME="%~nx1"

추가 괄호는 '&'와 같은 특수 문자가 배치 실행 중에 방해하지 않도록합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top