シェルスクリプト内に期待スクリプトがあります。私の問題は、子の期待スクリプトからシェルの親スクリプトに変数値を取得できないことです。
以下の私のコードを見つけてください:
#!/bin/sh
expect <<- DONE
spawn telnet myemailserver.com imap
expect "* OK The Microsoft Exchange IMAP4 service is ready."
send "a1 LOGIN myuser mypass\r"
expect "a1 OK LOGIN completed."
send "a2 EXAMINE INBOX\r"
expect "a2 OK EXAMINE completed."
send "a3 SEARCH UNSEEN\r"
expect "a3 OK SEARCH completed."
set results $expect_out(buffer)
set list [split $results "\n"]
send "a4 LOGOUT\r"
expect "Connection closed by foreign host."
spawn echo $list
expect eof
DONE
echo $list
exit 0
最後の行の変数リストが空であることがわかりました。変数 $list からシェルの親スクリプトに値を渡す方法はありますか?