여기에 주어진 답변이 귀하가 찾고자하는 것이 었는지 모르겠으며 몇 년 늦었을 수도 있습니다. 그러나 비슷한 문제를 스스로 해결 했으므로 따옴표 문제에 대한 대안을 제시하고자합니다. 아마 다른 사람에게 도움이 될 것입니다.
드래그하고 놓은 변수를 포함하여 주위의 변수에서 따옴표를 제거 할 수 있습니다. 방법은 다음과 같습니다
이
- 는
%n
변수에 물결을 추가 (예를 들어, copy %~1 "C:\path\to\it"
)
은 배치 파일 내의 다른 변수의 경우, 큰 따옴표의 대체를 수행하는 유사한 기술이 시간을 사용 아무것도 :"=
에 대한, 같이 :
set filename="C:\path\to\it"
echo %filename% (will give you "C:\path\to\it")
set noquotefilename=%filename:"=%
echo %noquotefilename% (will give you C:\path\to\it without the quotes)
그것은 내 원래의 솔루션은,하지만 난 다음 게시물의 하단에 그것을 발견되지 않습니다
Removing double quotes from variables in batch file creates problems with CMD environment
대체 기술은 쉽게 다른에 대한 모든 문자를 대체 할 수 있기 때문에, 다른 응용 프로그램이 있습니다 (예를 들어, : \ = _ 밑줄을위한 백 슬래시를 대체하기 위해).
희망이 도움이됩니다.
+1. 사실, 공백이있는 파일 이름은 항상 따옴표로 전달되고 따옴표 *는 인수의 일부입니다. '% 1'주위에 따옴표를 넣는 것은 대개 불필요합니다. 이것은 exe 변환기에 배치와 관련이있을 필요는 없습니다. – Joey
예, 알겠습니다. 감사. –