ホームページ  >  記事  >  運用・保守  >  Linuxでのexpectの使用法は何ですか

Linuxでのexpectの使用法は何ですか

WBOY
WBOYオリジナル
2021-12-31 17:01:366556ブラウズ

Linux では、expect は自動化された対話型スイートです。主にコマンドやプログラムを実行するときに使用されます。システムは、対話型通信を実現するために対話形式で指定された文字列を入力する必要があります。実行構文は「yum」です。 install -y Expect" ; このスクリプトを実行するための前提条件は、expect がインストールされている必要があることです。

Linuxでのexpectの使用法は何ですか

#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。

Linux での Expect の使用法

expect は自動化された対話型スイートであり、主に実行時にシステムと対話するために使用されます。コマンドとプログラム。対話型コミュニケーションを実現するために、フォームには指定された文字列の入力が必要です。

expect 自動対話プロセス:

spawn は指定されたプロセスを開始します---指定されたキーワードの取得を期待します---send 指定された文字を指定されたプログラムに送信します---完了後に終了します。

このスクリプトは、expect がインストールされている場合にのみ実行できることに注意してください。

yum install -y expect

Expect 共通コマンドの概要:

  • spawn 対話型プログラムが開始され、続いてコマンドまたは指定されたプログラム

  • # Expect 一致する情報を正常に取得し、その後プログラムアクションを実行します Expect

  • ## Send exp_send は指定された文字列情報の送信に使用されます

  • exp_ continue 予期される複数の一致には

  • send_user を使用する必要があります。シェルでの echo と同等の出力を出力するために使用されます

  • exit 期待スクリプトを終了します

  • eof 実行の終了を期待して終了します

  • set 変数の定義

  • put 出力変数

  • ##set timeout Set timeout
  • ##例:
1.リモート ホストに SSH ログインしてコマンドを実行します。メソッドは 1.sh または ./1.sh

# vim 1.sh 
#!/usr/bin/expect
spawn ssh saneri@192.168.56.103 df -Th
expect "*password"
send "123456\n"
expect eof

2 を実行します。SSH 経由でリモート ホストにログインしてコマンドを実行し、メソッドを実行します。シェル スクリプトで Expect コマンドを実行し、メソッド sh 2.sh、bash 2.sh、または ./2 .sh を実行できます。

#!/bin/bash
passwd='123456'
/usr/bin/expect <<-EOF
set time 30
spawn ssh saneri@192.168.56.103 df -Th
expect {
"*yes/no" { send "yes\r"; exp_continue }
"*password:" { send "$passwd\r" }
}
expect eof
EOF

関連する推奨事項: 「

Linux ビデオ チュートリアル

」 「

以上がLinuxでのexpectの使用法は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。