コマンドラインから実行するプログラムがあります。一度実行すると、テキスト値を要求してからReturnキーを押すことを期待します。
このプログラムを実行し、プロンプトが表示されるのを待ってから(2秒と仮定)、テキストとEnterキーを提供するbashスクリプトを作成できますか?
編集する:
Expectを使用してこのスクリプトを作成しましたが、機能しません。
#!/usr/bin/expect -f
set timeout 15
set user "myusername"
set server "x.x.x.x"
spawn ssh -l $user -p AAAA $server
expect "[email protected]'s password: "
send "the password\r"
ここでAAAAはポート、xxxxはIPです。
このスクリプトを実行すると、すぐに完了し、何も起こりません。
答え1
今はうまくいきますが、スクリプトを次のように変更しました。
#!/usr/bin/expect -f
set timeout 15
set user "myusername"
set server "x.x.x.x"
spawn ssh -l $user -p AAAA $server
expect "[email protected]'s password: " { send "the password\r" }
interact