다음과 같은 기대 스크립트가 있습니다.
#!/usr/bin/expect
.....
spawn passwd
expect "password:"
send "password"
....
....
....
~/test.sh
이렇게 하는 동안 bash 스크립트를 실행할 수 없습니다 test.sh
.
Expect 스크립트에서 Linux 명령/bash 스크립트를 실행하는 방법은 무엇입니까?
답변1
exec
일반적으로 출력을 수집하여 리디렉션하는 tcl 명령을 사용할 수 있습니다 .
#!/usr/bin/expect
...
exec ~/test.sh >@stdout
답변2
먼저 spawn
를 사용하여 스크립트를 실행해야 합니다. 물결표 구문이 해석될지 확실하지 않습니다.
spawn /bin/bash /home/username/test.sh
이런 일이 발생하면 오류 메시지가 표시되며, 이를 이해하지 못하는 경우 질문에 추가해야 합니다.