

expectの使い方についてご教示頂きたいことがあります。
内容は以下の通りです。
1)スイッチ機器にtelnetし、自動的に設定を行うようにしたい。
この機器の通常のプロンプトは"goo#"とする
"goo"はあらかじめ変数"host"として代入される。
telnet後、この装置のプロンプトが本当に goo#だったら"save"コマンドを実行する。
expect "${host}#"
send "save\n"
ここまではわかるのですが、ではgoo# 以外のプロンプトだったら即座に処理を中断
(別の処理)したいのです。
2)ログイン中に別ファイルを呼び出し、その中から1行ずつ抜き出して改行コードつきでコマンドを実行したい場合どうすればいいのか
http://www.linux.or.jp/JM/html/expect/man1/expec …
このページは読んだのですが、いまいちよく理解できません。
よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
どもです。
参考にしてみてください。
#!/usr/local/bin/expect
set host "192.168.1.10"
set prompt "prompt"
set passwd "passwd"
set timeout -1
log_file expect.log
if [catch {open "./cmd.txt" r} fd] {
puts "Can't open cmd.txt...\n"
exit
}
spawn telnet $host
expect {
"Connection timed out" {puts "\n\nTime out....\n"; exit}
"password:"
}
send "$passwd\r"
expect {
"Permission denied" {puts "\n\nPassword Invalid...\n"; exit}
$prompt
}
while {[gets $fd line] >= 0} {
send "$line\r"
expect $prompt
}
send "exit\r"
expect eof
close $fd
ありがとうございました、一発で解決しました。
また、別件ですがcoredumpさまが過去に回答された
>質問:shスクリプトでftp接続してファイル転送したい
もとても参考になりました。
精進いたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux cronでシェルスクリプト実行時のkubactlコマンドが機能しない対処法。 2 2022/08/03 18:58
- IT・エンジニアリング インフラエンジニア(ネットワークエンジニア)の検証業務について教えてください。 インフラ初心者なので 2 2022/06/26 00:08
- その他(プログラミング・Web制作) Pythonの作業環境・作業フォルダの迅速な設定・指定方法 3 2022/04/01 07:55
- Java java 次の機能を有するメソッドを自クラスに作成し、実装したいです。 機能 名前判定機能 →名前が 3 2022/06/16 16:08
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/10 14:24
- Windows 10 外部ドライブにマウントできない問題について 9 2022/03/22 18:08
- その他(教育・科学・学問) 大学理系研究室における器材の貸し出しや取り決めについて 1 2022/12/01 22:04
- その他(開発・運用・管理) WindowsからSSHでサーバーにあるファイルをダウンロードできない…。 3 2022/04/24 11:08
- その他(パソコン・スマホ・電化製品) LINUXPCに詳しい人に気楽に答えてほしい質問です。 2 2022/10/25 08:07
- その他(教育・科学・学問) 大学実験器材の貸し出しルール 1 2022/12/05 16:23
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
centOS7サーバーに配置したHTML...
-
誰かにサーバにあるデータを消...
-
scriptコマンドで出力したログ...
-
シャットダウンしたユーザを知...
-
ウインドウズ10 休止状態
-
exeファイルの実行結果をテキス...
-
バッチスクリプト処理でエラー...
-
DebianのApache(掲示板)CGIエ...
-
パソコンの画像データを削除し...
-
バッチファイルでのスペースの入力
-
CygwinをインストールしたけどX...
-
コマンド実行結果のファイル出力
-
バッチファイルで多重起動を防ぐ
-
Winでソフトのシリアル番号を調...
-
コンパイルの途中で、以下のよ...
-
Net-SNMPでのmake時のエラーに...
-
Postfixでmailコマンドを使用し...
-
Macの手書き漢字入力ツールにつ...
-
proftpdをアンインストールしたい
-
クリップボードの内容をEXCELに...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
誰かにサーバにあるデータを消...
-
scriptコマンドで出力したログ...
-
centOS7サーバーに配置したHTML...
-
OpenLDAPでのユーザ一覧表示
-
バッチで削除したフォルダをイ...
-
mac ターミナル
-
CHROMEBOOK CHROME OSについて...
-
こんなバッチファイルってでき...
-
シャットダウンしたユーザを知...
-
OSXのクラシック環境で、Fil...
-
WORD2000 元に戻すコマンドに...
-
lprコマンド(印刷)を実行する...
-
CentOSで操作ログを取得するコ...
-
CentOSへのSSHをGUIで操作でき...
-
Ubuntuの端末におけるシステム...
-
RedHat5で荐怨
-
expectの使い方について
-
ubuntuに外部侵入できるか
-
patchコマンドってどのrpmに入...
-
ログに特定の文字が含まれてい...
おすすめ情報