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を探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・2024年に成し遂げたこと
- ・3分あったら何をしますか?
- ・何歳が一番楽しかった?
- ・治せない「クセ」を教えてください
- ・【大喜利】看板の文字を埋めてください
- ・【大喜利】【投稿~12/17】 ありそうだけど絶対に無いことわざ
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・【穴埋めお題】恐竜の新説
- ・我がまちの「給食」自慢を聞かせてっ!
- ・冬の健康法を教えて!
- ・一番好きな「クリスマスソング」は?
- ・集合写真、どこに映る?
- ・自分の通っていた小学校のあるある
- ・フォントについて教えてください!
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・10代と話して驚いたこと
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Linux●前の行に戻れません...
-
centos7 apacheが起動しない
-
バッチで削除したフォルダをイ...
-
誰かにサーバにあるデータを消...
-
ソフトのインストール場所って...
-
バッチスクリプト処理でエラー...
-
aptでインストールしたプログラ...
-
exeファイルの実行結果をテキス...
-
CSHが使えない REDHAT
-
バッチファイルでのスペースの入力
-
VBでExcelが起動されているか知...
-
redhatのインストールが途中で...
-
Winでソフトのシリアル番号を調...
-
.cshrcでのエラー
-
DebianのApache(掲示板)CGIエ...
-
pkg-config のPKG_CONFIG_PATH...
-
ご教授願います PC初心者です。...
-
バッチファイル内置換
-
cygwinのインストールが成功しない
-
フロッピーディスクの読み込み方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
誰かにサーバにあるデータを消...
-
scriptコマンドで出力したログ...
-
OpenLDAPでのユーザ一覧表示
-
シャットダウンしたユーザを知...
-
出力のリダイレクトコマンド「>...
-
バッチで削除したフォルダをイ...
-
telnet後のログのとり方
-
lprコマンド(印刷)を実行する...
-
mac ターミナル
-
expectの使い方について
-
centos7 apacheが起動しない
-
Linux●前の行に戻れません...
-
リモートでバッチを実行(Windo...
-
「エンドタグがスタートタグと...
-
ログに特定の文字が含まれてい...
-
centOS7サーバーに配置したHTML...
-
CONFIG.SYSの内容確認方法
-
ソフトのインストール場所って...
-
DebianのApache(掲示板)CGIエ...
-
バッチスクリプト処理でエラー...
おすすめ情報