サーバーへのファイルのアップロード、ソフトウェアのインストール、コマンドやスクリプトの実行、サービスの再起動、サーバーの再起動など、サーバーを一括して操作する必要がある場合があります。これらを一つ一つ手動で操作すると非常に面倒で、人的資源の無駄になります。 このとき、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 を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
>>: ユニアプリとミニプログラム(画像とテキスト)を下請けする方法を教えます
仮想化1. 環境セントオス7.3 selinuxとファイアウォールを無効にする2. 仮想化環境の構成...
1つ。まず、アイデアとしてパッケージ化する必要があります。私はSpringbootフレームワークプロ...
forループfor ループは配列の要素をループします。文法: for (初期化変数; 条件式; 繰り...
この記事の例では、商品検索機能を実現するためのJavaScriptの具体的なコードを参考までに共有し...
この記事では、参考までにVMWare LinuxにMySQL 5.7.13をインストールするチュート...
今日、ふとリッチテキストエディタの制作原理を見直してみようと思いました。それで、彼は何も言わずにそれ...
1. はじめに行ロックとテーブルロックの違いは面接で頻繁に出てくるはずです。MySQL のロックにつ...
<br />Web2.0とは何ですか? Web2.0にはソーシャルネットワーク製品とその...
最近、Apache を nginx に変更しました。TP プロジェクトを実行に移すと、404 エラー...
<br />関連記事: Web コンテンツ ページ作成のための 9 つの実用的なヒント、...
毎日jQueryプラグイン - カルーセルチャートを実装するためのjQueryプラグイン。参考までに...
目次1. 前に書く2. ポップアップウィンドウを実装するためのオーバーレイ2.1 vueページのad...
1. RTMP RTMP ストリーミング プロトコルは、Adobe が開発したリアルタイムのオーディ...
この記事の例では、コンピュータカメラを呼び出して写真機能を実現するためのvueの具体的なコードを参考...
序文mysql モジュール (プロジェクト アドレスは https://github.com/mys...