サーバーへのファイルのアップロード、ソフトウェアのインストール、コマンドやスクリプトの実行、サービスの再起動、サーバーの再起動など、サーバーを一括して操作する必要がある場合があります。これらを一つ一つ手動で操作すると非常に面倒で、人的資源の無駄になります。 このとき、expect を使用してターゲット サーバーに指示を送信し、バッチ操作を実装できます。 次の例では、centos上のファイルを他のサービスプロバイダーにバッチコピーし、対応するコマンドを実行します。 1. CentOSにExpectをインストールする yumインストール期待 2. 期待スクリプトcopyfilebatch.shを記述する 次のスクリプトは、イントラネット IP アドレス 192.168.0.102 ~ 192.168.0.112 を持つサーバーに rc.local ファイルをコピーします。コピーが成功したら、chmod コマンドを実行してサーバーをそれぞれ再起動します。 #!/usr/bin/expect -f パスワードを設定する rootpassword {i 102 に設定} {$i <= 112} {i を増分} { IPアドレスを「192.168.0.$i」に設定する 「$ip」を置く ssh -o StrictHostKeyChecking=no $ip を実行します。 タイムアウト3を設定 「root@$ip のパスワード:」を期待します タイムアウト3を設定 「$password\r」を送信 タイムアウト3を設定 「exit\r」を送信 scp /home/install/rc.local root@$ip:/etc/rc.d/rc.local を起動します。 タイムアウト3を設定 「root@$ip のパスワード:」を期待します タイムアウト3を設定 「$password\r」を送信 タイムアウト3を設定 「exit\r」を送信 ssh root@$ip を生成する 期待する { "*はい/いいえ" { "はい\r"を送信; exp_continue} "*password:" { "$password\r" を送信 } } 期待する "#*" #実行するコマンドは「chmod +x /etc/rc.d/rc.local\r」を送信します 「再起動\r」を送信 「exit\r」を送信 EOFを期待する } 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
>>: ユニアプリとミニプログラム(画像とテキスト)を下請けする方法を教えます
序文データベースのデータを表示すると、文字化けした文字が表示されることがあります。実際、どのようなデ...
この記事では、テーブル構造操作やフィールド操作など、MySQL データ テーブルの基本的な操作につい...
1. HTML部分 <Col span="2">ファイルをアップロー...
この記事では、MySQL 5.7.17のインストールと設定方法を参考までに紹介します。具体的な内容は...
この記事では、例を使用して、MySQL スケジュール タスクの実装と使用方法を説明します。ご参考まで...
目次概要インデックスデータ構造バイナリツリー赤黒木BツリーB+ツリーハッシュ索引InnoDB インデ...
以前、CSS を使用してテーブルの border + bordercolordark + borde...
IE8 や Chrome で上記の設定を使用すると、画面の最大幅に合わせて表示が統一され、各列の幅は...
背景私は新しいプロジェクト チームに配属されたので、プロジェクトでは js を使用する必要があります...
今日午後ずっと私を悩ませたバグを記録する半月前から始めましょう。それから.................
目次1. Vue2との比較1. Vue3の新機能2. Vue2とVue3の応答原理の比較3. 配列の...
Antd+react+webpackは、多くの場合、Reactテクノロジースタックに基づくフロントエ...
この記事では、例を使用して、MySQL データベースの列を追加、削除、および変更する方法について説明...
CSS3 を学ぶということは、新しい機能と基本的な理論に慣れることを意味します。この記事では、ケー...
目次1. 外部キー制約外部キーとは何ですか?外部キーを使用する条件:外部キーの定義構文は次のとおりで...