.bat 파일의 "rem"주석으로 인해 "25는 현재 예기치 않았습니다."오류가 발생합니다.
Aug 20 2020
이상하지 않나요? .bat rem 명령에 일종의 이스케이프 코드가 있습니까?
file.bat :
rem https://sourceforge.net/p/jedit/bugs/4084/?limit=25
실행 :
C:\Users\admin>file.bat
25 was unexpected at this time.
C:\Users\admin>https://sourceforge.net/p/jedit/bugs/4084/?limit=25
오류 수준이 표시되지 않습니다.
답변
4 aschipfl Aug 20 2020 at 06:10
이 rem
명령은 하나의 인수, 즉를 지원하며 이에 /?
대해 탐욕 스럽습니다. URL에 해당 문자열이 있습니다.
(가) =
표준 토큰 구분 기호 (단지 같은 SPACE, TAB, ,
, ;
), 그리고 나머지는 다른 (무효) 명령으로 해석하는 것 때문에.
/?
더 이상 감지되지 않으므로 따옴표 사이에 설명 텍스트를 넣으면 도움 이됩니다.
rem "https://sourceforge.net/p/jedit/bugs/4084/?limit=25"
이것을 작성할 때 :
rem/ https://sourceforge.net/p/jedit/bugs/4084/?limit=25
해당 /?
부분도 더 이상 감지되지 않습니다. 그러나, 특수 문자는 좋아 &
, <
, >
, |
, (
및 )
다음 인정 받고 있습니다.
또 다른 대안은 ::
실제로 유효하지 않은 레이블 인 스타일 주석 을 사용하는 것 입니다 (레이블은 :
, 참조 goto /?
및으로 시작 call /?
).
:: https://sourceforge.net/p/jedit/bugs/4084/?limit=25
특수 문자는 여기서 문제가되지 않지만 괄호로 묶인 코드 블록 내에서 사용해서는 안됩니다.
js2010 Aug 20 2020 at 00:26
오, 이상하네요. Rem은 /? /? 다른 줄의 어딘가에 묻혀 있습니다. 큰 따옴표 안에 주소를 넣으면 문제가 해결된다고합니다.
C:\Users\admin>rem /?
Records comments (remarks) in a batch file or CONFIG.SYS.
REM [comment]
또는 25가없는 전체 문자열은 동일한 결과를 제공합니다.
rem https://sourceforge.net/p/jedit/bugs/4084/?limit=
Records comments (remarks) in a batch file or CONFIG.SYS.
REM [comment]