다음 bash
스크립트를 가정합니다 questions.sh
.
#!/bin/bash
echo "Hello, who are you?"
read REPLY
그리고 다음 expect
스크립트:
#!/usr/bin/expect -f
spawn ./questions.sh # start our script using spawn command
expect "Hello, who are you?\r"
send -- "Im Adam\r"
스크립트는 쉘 스크립트에 대한 응답 봇 역할을 기대합니다. 이제 일부 답변을 동적으로 생성해야 한다고 가정해 보겠습니다. 예를 들어, answers.sh
다른 쉘 스크립트( )의 출력을 응답으로 제공하고 싶다고 가정해 보겠습니다 . expect
스크립트를 어떻게 수정할 수 있나요 ? 다음을 시도했지만 작동하지 않는 것 같습니다.
#!/usr/bin/expect -f
spawn ./questions.sh # start our script using spawn command
expect "Hello, who are you?\r"
send ./answers.sh
답변1
나는 다음을 생각했다:
#!/usr/bin/expect -f
spawn ./questions.sh # start our script using spawn command
expect "Hello, who are you?\r"
set answer [exec ./answer.sh]
send $answer