Unix全般 -> シェル -> Bash

自動ssh と 自動scp

自動ssh

基本的な記述
#!/usr/bin/expect

set timeout 5
spawn ssh -l ユーザ名 192.168.0.2
expect "password:"
send パスワード\r\"
expect "Last login"
send "hostname\n"
interact
シェルに埋め込む
シェルに埋め込むと複数のサーバで実行ができる。

#!/bin/sh

IP_LIST="192.168.0.2
         192.168.0.3"

for IP in $IP_LIST
do
  expect -c "
  set timeout 5
  spawn ssh -l ユーザ名 $IP
  expect \"password:\"
  send \"パスワード\r\"
  expect \"Last login\"
  send \"df -h\r\"
  send \"exit\r\"
  interact
"

exit 0
root権限で実行する。rootへのスイッチユーザを追加
#!/bin/sh

IP_LIST="192.168.0.2
         192.168.0.3"

for IP in $IP_LIST
do
  expect -c "
  set timeout 5
  spawn ssh -l ユーザ名 $IP
  expect \"password:\"
  send \"パスワード\r\"
  expect \"Last login\"
  send \"su -\r\"
  expect \"Password:\"
  send \"rootのパスワード\r\"
  send \"cat /etc/shadow\r\"
  send \"exit\r\"
  send \"exit\r\"
  interact
"

exit 0

自動scp

#!/bin/sh

IP_LIST="192.168.0.2
         192.168.0.3"

FILE=$1
DIR=$2
USER=user01

for IP in $IP_LIST
do
  expect -c "
  set timeout 5
  spawn scp $FILE $USER@$IP:$DIR
  expect \"password:\"
  send \"パスワード\r\"
  send \"exit\r\"
  interact
"

exit 0
      Document-Folder          一覧
HP-UX
HULFT
JAVA
JP1
JavaScript
Linux
MAC
PHP
Perl
Python
Ruby
SOA
Solaris
Unix全般
Windows
XML
エクセル
スタイルシート
セキュリティー
データベース
ネットワーク
パソコン
ブラウザ
プログラム構文
仮想化
          RSS-Folder
ニュース
   アットマーク・アイティ(@IT)
   シンクイット(ThinkIT)
   インターネットコム
   インターネットウォッチ
   日経IT-Pro
   日経パソコン
   CNET Japan
   ZD-NetJapan
   MYCOM
   RBB-Today
ベンダー
   日本IBM
   日本HP
   サンマイクロシステムズ
   NEC
   富士通
   日立
ソフトウェア
   マイクロソフト
   トレンドマイクロ
   オラクル
   サイボウズ
   Mozilla
   野村総合研究所
   (その他ソフトウェア企業)
更新履歴 一覧
 07/08 PERF
プログラム構文
 07/07 PERF
プログラム構文
 06/25 オブジェクトプログラミング2
Perl>サンプル
 07/12 クローン作成
仮想化>vCenter
 07/12 vyatta設定
ネットワーク>vyatta
 07/12 vyattaインストール
ネットワーク>vyatta
 07/12 リポジトリサーバ
Linux>サーバ構築
 07/05 VMwareのインストール
仮想化>VMware
 07/05 PXEブート
仮想化>KVM
 07/01 DHCPでのPXEブート
仮想化>KVM
 06/27 qcow2仮想DISK作成
仮想化>KVM
 06/13 NWの設定
仮想化>VMwareEsxi
 06/13 IPアドレスの変更
仮想化>VMwareEsxi
 06/12 自動ssh
Unix全般>シェル>Bash
 06/12 diffプログラミング
Python
Google