回答編集履歴

3 全角スペースを修正

mit0223

mit0223 score 3284

2017/03/05 10:33  投稿

> などと表示され、expectによるパスワードの入力が実行されておりません。
とありますが、```[vagrant@localhost tmp]$``` はコマンドプロンプトのように見えます。パスワードの入力には成功しているのではないでしょうか?(パスワードはエコーされませんので、expect から送っても表示されません)
プロンプトメッセージを expect してから、ログイン後に実行したいコマンドを send してみてはどうでしょうか?
---
**訂正**
すみません。```[vagrant@localhost tmp]$```は呼びもとのプロプントでしたね。
パスワードを送るときに改行を送らなければならないのではないでしょうか? また、send 後すぐに expect 自身が終わってしまうのをふせぐために、出力を expect してはどうでしょうか? 以下ではどうですか?
```shell
expect -c "
 spawn reboot
 expect \"Password:\"
 send \"vagrant\n\"
 expect .*
 expect .*
"
```
2 expect .* の追加

mit0223

mit0223 score 3284

2017/03/05 10:26  投稿

> などと表示され、expectによるパスワードの入力が実行されておりません。
とありますが、```[vagrant@localhost tmp]$``` はコマンドプロンプトのように見えます。パスワードの入力には成功しているのではないでしょうか?(パスワードはエコーされませんので、expect から送っても表示されません)
プロンプトメッセージを expect してから、ログイン後に実行したいコマンドを send してみてはどうでしょうか?
---
**訂正**
すみません。```[vagrant@localhost tmp]$```は呼びもとのプロプントでしたね。
パスワードを送るときに改行を送らなければならないのではないでしょうか?以下ではどうですか?
パスワードを送るときに改行を送らなければならないのではないでしょうか? また、send 後すぐに expect 自身が終わってしまうのをふせぐために、出力を expect してはどうでしょうか? 以下ではどうですか?
```shell
expect -c "
 spawn reboot
 expect \"Password:\"
 send \"vagrant\n\"
 expect .*  
"
```
1 改行送信について追記

mit0223

mit0223 score 3284

2017/03/05 10:18  投稿

> などと表示され、expectによるパスワードの入力が実行されておりません。
とありますが、```[vagrant@localhost tmp]$``` はコマンドプロンプトのように見えます。パスワードの入力には成功しているのではないでしょうか?(パスワードはエコーされませんので、expect から送っても表示されません)
プロンプトメッセージを expect してから、ログイン後に実行したいコマンドを send してみてはどうでしょうか?
プロンプトメッセージを expect してから、ログイン後に実行したいコマンドを send してみてはどうでしょうか?
---
**訂正**
すみません。```[vagrant@localhost tmp]$```は呼びもとのプロプントでしたね。
パスワードを送るときに改行を送らなければならないのではないでしょうか?以下ではどうですか?
```shell
expect -c "
 spawn reboot
 expect \"Password:\"
 send \"vagrant\n\"
"
```

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る