私はshow allコマンドを実行するためにHPE仮想接続モジュールに出る予定のスクリプトを持っています。私はプロンプトを "期待" していたときにしかし、 " - >"、エラーを取得イム:Linuxはプロンプトでハイフンを期待しています
bad flag "-> ": must be -glob, -regexp, -exact, -notransfer, -nocase, -i, -indices, -iread, -timestamp, -timeout, -nobrace, or --
while executing
"expect "-> ""
(file "./expect_vc_showall.ziUzpF" line 10)
ここでは私のコードです:
#!/usr/bin/expect -f
set timeout 60
set ip_hostname [lindex $argv 0];
#log_user 0
spawn ssh [email protected]$ip_hostname
expect {
"*yes/no*" { send "yes\r"; exp_continue }
"*assword:" { send "password123\r" }
}
expect "-> "
send "show all\r"
#log_user 1
expect "-> "
send "exit\r"
私が期待し使用しようとしました - 「 - > "しかし、それは私をただちに促し、死にます。ここで
は、プロンプトは次のようになります。私は期待していない場合
Last login: Thu Jul 27 17:09:28 2017 from 172.16.100.78
-------------------------------------------------------------------------------
HP Virtual Connect Management CLI v4.41
Build: 4.41-6 (r315367) Mar 5 2015 13:59:31
(C) Copyright 2006-2015 Hewlett-Packard Development Company, L.P.
All Rights Reserved
-------------------------------------------------------------------------------
GETTING STARTED:
help : Displays a list of available subcommands
exit : Quits the command shell
<subcommand> ? : Displays a list of managed elements for a subcommand
<subcommand> <managed element> ? : Displays detailed help for a command
->
「>」は、最初のサブコマンドのテキストで死にます。
これを動作させる方法はありますか?
ありがとうございます! ジョー
「\ - >」のようにエスケープするのはどうですか? –
それも試してみてください。それは私をプロンプトに連れて来ます。ショーをすべて送信しないでください。 – Joe