好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > shell腳本實現同時多臺遠程主機執行命令的代碼分享

shell腳本實現同時多臺遠程主機執行命令的代碼分享

熱門標簽:益陽400電話申請辦理流程 江西全自動外呼系統報價 地圖標注人員分布 昆明電銷機器人價格 上海機器人外呼系統哪家好 梧州防封電銷卡 怎么用百度地圖標注坐標 春運地圖標注app 400的電話一般從哪里辦理

實現需求

在對單臺機器做操作時我們會用“ssh ip”的方式登錄到機器上,可以寫這樣一個工具vssh ip1,ip2,…ipn 來模擬登錄到n 臺服務器,登錄后所有操作相當于同時對n 臺服務器生效。

實現方法

首頁要確保可以通過本地公鑰無密碼登錄遠程主機:

ssh-copy-id [-i [identity_file]] [user@]machine

shell腳本

#!/bin/bash
# -------------------------------------------------------------------------------
# Author:   Loya.Chen
# Description: Execute commands on multiple remote hosts at the same time.
# -------------------------------------------------------------------------------
set -e
Usage() {
  echo "Usage: $0 host1 host2 ... 'command'"
}
if [ $# -lt 2 ] ;then
  Usage
  exit 0
else
  cmd=${!#}
fi
logfile=$(mktemp)
i=1
success=0
failed=0
for ip in $@;do 
  if [ $i -eq $# ];then
    break
  fi
  ssh $ip $cmd > $logfile
  if [ $? -eq 0 ];then
    #((success++))
    success=$(($success+1))
    echo -e "\n\033[32m$ip | success \033[0m \n"
    cat $logfile
  else
    ((failed++))
    echo -e "\n\033[31m$ip | failed \033[0m\n "
    cat $logfile
  fi
  ((i++))
done
echo -e '\n-------------------------'
echo -e "\033[32msuccess: $success | failed: $failed \033[0m"
echo '-------------------------'

示例

$ bash vssh 10.0.0.11 10.0.0.12 'free -m'
10.0.0.11 | success 
       total    used    free   shared  buffers   cached
Mem:     2871    156    2715     0     8     36
-/+ buffers/cache:    111    2760
Swap:     2047     0    2047
10.0.0.12 | success 
       total    used    free   shared  buffers   cached
Mem:      980    615    365     0     12     69
-/+ buffers/cache:    533    447
Swap:     2047     0    2047
-------------------------
success: 2 | failed: 0 
-------------------------

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

您可能感興趣的文章:
  • Shell命令行中特殊字符與其轉義詳解(去除特殊含義)
  • linux shell發送Email郵件的方法詳解
  • 詳解shell 遍歷文件夾內所有文件并打印絕對路徑
  • Linux shell 之 提取文件名和目錄名的一些方法總結
  • Linux shell常用的73條命令總結
  • shell腳本報錯:"[: =: unary operator expected"解決辦法

標簽:惠州 北京 河南 懷化 九江 贛州 新疆 亳州

巨人網絡通訊聲明:本文標題《shell腳本實現同時多臺遠程主機執行命令的代碼分享》,本文關鍵詞  shell,腳本,實現,同時,多臺,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《shell腳本實現同時多臺遠程主機執行命令的代碼分享》相關的同類信息!
  • 本頁收集關于shell腳本實現同時多臺遠程主機執行命令的代碼分享的相關信息資訊供網民參考!
  • 推薦文章