Shell 脚本合集


0. 说明

   Shell 脚本合集


 1. xcall.sh

  xcall.sh 编写为了为了同时对多台服务器进行操作,编写完成之后,将其发送到 /usr/local/bin 下

#!/bin/bash

# for循环
for((i=101 ; i<=105; i++)) ; do
    # 更改文本颜色
    tput setaf 2
    # 输出以下文本
    echo ==================== s$i $@ ===================
    # 更改文本颜色
    tput setaf 9
    # ssh 远程登陆主机 s$i ,执行输入的参数的命令
    ssh s$i $@
done

 2. xsync.sh

  先安装 rsync,命令是一个远程数据同步工具

# 需要以 root 用户身份执行
xcall.sh yum install -y rsync

  xsync.sh 编写是为了同步配置文件,编写完成之后,将其发送到/usr/local/bin下

#!/bin/bash

# 指出当前用户名
name=`whoami`
# 指定文件所在文件夹名称
dir=`dirname $1`
# 指定文件的文件名
filename=`basename $1`
# 进入到dir中
cd $dir
# 得到当前目录的绝对路径
fullpath=`pwd`

for((i=102 ; i<=105; i++)) ; do
    tput setaf 2
    echo ==================== s$i $@ ===================
    tput setaf 9
    # 远程同步命令  l 保留软连接 r 递归文件夹
    rsync -lr $filename "$name"@s"$i":$fullpath
done

3. xk.sh

  3.1 xk.sh

#!/bin/bash
# 强制结束进程
kill -9 `jps | grep -i $1 | awk '{print $1}'` > /dev/null 2>&1

  3.2 xkill.sh

#!/bin/bash

# for循环
for((i=101 ; i<=105; i++)) ; do
    # 更改文本颜色
    tput setaf 2
    # 输出以下文本
    echo ==================== s$i $@ ===================
    # 更改文本颜色
    tput setaf 9
    # ssh 远程登陆主机 s$i ,执行xk.sh命令
    ssh s$i xk.sh $1
done

  3.3 分发 xk.sh

  su root
  xsync.sh
/usr/local/bin/xk.sh
  exit

原文地址:https://www.cnblogs.com/share23/p/9884091.html