首页 > 系统相关 >linux命令多服务器分发执行xcall

linux命令多服务器分发执行xcall

时间:2022-11-21 00:23:01浏览次数:43  
标签:xcall 命令 usr linux 服务器 执行

前言:

  1. linux服务器/usr/local/sbin目录,一般是用户自己安装软件后的命令所在目录。将命令放在此处可以在linux中任意位置执行,相当于自动添加了全局变量,所以将xcall放入此处较为合适。

  2. 各个服务器需提前添加ssh互信

  3. 本命令分发脚本用法:
    1)在任意目录输入:xcall 命令即可在配置的服务器执行
    2)会自动进入用户,执行命令的所在目录,执行命令
    3)如果有输出,会将输出打印到控制台


按顺序执行以下命令

  • 进入用户软件安装命令目录
    cd /usr/local/sbin
  • 创建xcall命令
    touch xcall
  • 添加可执行权限
    chmod 710 xcall
  • 执行以下命令添加分发执行脚本命令
cat >> /usr/local/sbin/xcall << EOF
#!/bin/bash

file_name='xcall-server.list'
cmd_str=$1

pwdstr=$(pwd)
serverListPath=$(dirname $0)
cd $pwdstr
serverlist_file="$serverListPath/$file_name"

if [ ! -e $serverlist_file ] ; then
    echo "xcall-server.list not exist, whole path is $serverlist_file";
    exit 0;
fi

while read line
do
    if [ -n "$line" ] ; then
        echo "DOING --->" $line "<---"
        ssh root@$line "cd $pwdstr;$@" < /dev/null
    fi
done < $serverlist_file
EOF
  • 在当前目录下新建文件,添加执行的服务器列表
    touch /usr/local/sbin/xcall-server.list
  • 执行以下命令
cat >> /etc/hosts << EOF
192.168.1.11
192.168.1.21
192.168.1.22
EOF

标签:xcall,命令,usr,linux,服务器,执行
From: https://www.cnblogs.com/yangche/p/16910121.html

相关文章

  • Linux find command All In One
    LinuxfindcommandAllInOnerefsfindcommandhttps://www.runoob.com/linux/linux-comm-find.htmlhttps://linuxize.com/post/how-to-find-files-in-linux-using-th......
  • Linux环境下ARM开发工具TrueSTUDIO初体验
    Linux环境下ARM开发工具TrueSTUDIO初体验TrueSTUDIO是Atollic公司出品的ARM开发工具,号称“ThebestFREEC/C++IDEforARM®development”,从7.0版本开始推出了Linux版,后......
  • 使用脚本创建Linux无文件木马
    实验环境:攻击主机:kali2022.3IP192.168.1.53开启apache2目标主机:centos7.6ip192.168.1.63    前提条件1.已经获取到目标主机root权限2.已经建立一个WEB网站......
  • Linux 命令行批处理图片,批量去除截图的无用部分
    我希望产生一批相同区域但不同内容的截图,如果用截图工具截取矩形区域,那么每次截取的位置和大小都没法控制,不能做到区域一样。如果希望每次的截图都一样,那么就只能是保持窗口......
  • LINUX命令截图
                 ......
  • Linux切换账户(或ssh远程)执行QT程序无法输入中文
    系统:银河麒麟前提条件:已经安装了fcitx插件,因为QTcreator本身不支持中文输入,需要插件支持;场景1:一台计算机;使用普通用户(例如:user01)登录并打包一个可以执......
  • LINUX命令
      ls-a列出当前目录下的所有文件,包括以.头的隐含文件(如~/.bashrc)ls–l列出当前目录下文件的详细信息2.pwd查看当前所在目录的绝对路经3.cd目录之间的移......
  • 简单linux-sudo密码劫持脚本
    简单linux-sudo密码劫持脚本#!/bin/bashswhoami=`whoami`if[[!-f"/tmp/..."]];then swhoami=`whoami` read-s-p"[sudo]passwordfor$swhoami:"passwd ......
  • Linux 使用 iptables 禁止某些 IP 访问
    在Linux服务器被攻击的时候,有的时候会有几个主力IP。如果能拒绝掉这几个IP的攻击的话,会大大减轻服务器的压力,说不定服务器就能恢复正常了。在Linux下封停IP,有封杀网段和封......
  • linux vim 复制粘贴代码
    将光标移动到复制的起始位置,按一下大写V或小写v,(大写V是整行,小写是光标处),然后上下左右将光标移动到复制的末尾,然后按下y,移动到要粘贴的位置,按下大写P或小写p(大写P:光标之前......