私は期待を必要とする本当に単純なbashスクリプトを持っています。bashからexpectに値を渡す必要があり、別のサーバーなどにsshしようとはしていません(ssh経由で別のサーバーにログインすることに関する質問しかないように見えるため)。
アイデアは単純に次のようなものです。
#!/usr/bin/env bash
echo "Please enter your password: "
read PASSWD
x=$(expect -c '
spawn su -c 'whoami'
expect "Password:"
send "$PASSWD\r"
interact
')
したがって、これは機能しません。Expect シェルは $PASSWD 変数を認識しません。これはどのように達成できますか?
ありがとうございました。