기억해야 할 중요한 점은 확장 된 텍스트는 명령 줄에서 명령을 입력하는 것과 똑같이 보여야한다는 것입니다. (실제로 몇 가지 예외가 있지만 이는 좋은 출발점입니다.)
스크립트를 디버깅하려면 호출하기 전에 에코를 넣으십시오 (@echo call %1
). 이제 이전처럼 실행 해보십시오. blah.bat "echo 'hello'"
은 call "echo 'hello'"
입니다. 명령 줄에서 실행 해보십시오. 작동하지 않습니다. call echo 'hello'
을 원합니다.한 당신이로합니다 (~
수정 스트립 인수
@echo off
call %~1
에서 따옴표를 둘러싸 아니면 전화를 도랑 단순히 다음을 사용할 수 있습니다
한 수정은 약간 스크립트를 변경하는 것 당신이 반환하려는 또 다른 배치 파일) 명령 행에 다른 인수가없는 경우
@echo off
%~1
, 당신은 모든 인수로 확장 %*
를 사용하여 더 나을 수도를 호출하지
@echo off
%*
REM or call %*
이제 당신은 그 배치 가능성이 주위에 작업을 추가하거나 다른 코딩이 필요합니다 특별한 경우의 불확실성의 모든 종류가 알고 있어야합니다 그래서
blah.bat echo "hello"
처럼 배치를 호출 할 수 있습니다. 목록에 너무 많습니다 - 예기치 않은 것을 기대하십시오.
자세한 답변을 주셔서 감사합니다. ~ 문자를 추가하면 속임수를 쓰며 "힘내 상태"라고해도 충분했습니다. – edbras