예상 명령을 사용하십시오

예상 명령을 사용하십시오

다음 프롬프트를 제공하는 설치 스크립트가 있습니다.

선택 사항을 입력하거나 Enter를 눌러 기본 선택 사항을 적용하십시오. [1]:

나는 그것을 잡을 수 없습니다. Enter에 대한 방정식을 해결하려고 시도했지만 아무 것도 작동하지 않는 것 같습니다.

어떤 아이디어라도 환영받을 것입니다

답변1

와 같은 문자열을 일치시키려고 할 때 두 가지 유형의 문제가 발생합니다 "[1]".

먼저 문자열을 expect사용하고 tcl있으며 []큰따옴표 안의 특수 문자이므로 를 사용하여 이스케이프 처리 \[하거나 중괄호 따옴표를 사용해야 합니다 {}.

둘째, expect패턴의 기본값은 glob 패턴이므로 [abc]a, b 또는 c 문자와 일치한다는 의미입니다. 따라서 [두 번째 이스케이프가 필요하거나 옵션을 사용하여 -exglob을 사용하지 않고 정확한 문자열을 사용함을 나타낼 수 있습니다.

따라서 유효한 결과 명령은 다음과 같습니다.

expect -ex {default choice [1]:}

관련 정보