zoukankan      html  css  js  c++  java
  • shell脚本批量ssh登陆主机并执行命令

    shell脚本批量ssh登陆主机并执行命令

    今天在客户现场遇到了这个问题,客户没有管理工具,无法批量登陆主机下发命令,几个个C段啊,让我一个一个登陆,。。。。。。。。。。。。。。。。。。

    所以写了个shell脚本,批量使用用户名密码方式登陆Linux主机,执行命令,并判断是否执行成功。

    功能:

    1. 读取IP地址文件,循环登陆主机执行命令,保存返回结果。

    脚本已经上传到github https://github.com/b4zinga/UsefulScripts/blob/master/remote-exec.sh

    #!/bin/sh
    # Date  : 2018-09-14 14:56:09
    # Author: b4zinga
    # Email : b4zinga@outlook.com
    # Func  : 批量登陆Linux主机并执行命令
    
    username="root"
    password="password"
    port="22"
    timeout=3
    
    cmd="id > /tmp/b4"
    
    login(){
        echo ""
        echo "-------------------------------------------------------- "
        echo "username: $username  password: $password  port: $port  timeout=$timeout" 
        echo "command: $cmd"
        echo "Remote exec command script"
        echo "--------------------------------------------------------"
        echo ""
    
    
        for host in `cat ip.txt`;
        do
            result=""
            result=`sshpass -p "$password" ssh -p $port -o StrictHostKeyChecking=no -o ConnectTimeout=$timeout $username@$host $cmd`
            echo $host >> result.txt
            echo $result >> result.txt
    
        done
        echo ""
    }
    
    login
    ls
    
  • 相关阅读:
    gcc/g++命令参数笔记
    周总结
    帆软FineBI试用
    C++输入流
    tt
    linux6 安装oracle11g
    linux下修改/dev/shm tmpfs文件系统大小
    centos6.5_x86_64 下安装 Oracle11gR2 的详细过程
    Linux Network配置
    安装KornShell(KSH)
  • 原文地址:https://www.cnblogs.com/0x4D75/p/9648376.html
Copyright © 2011-2022 走看看