检测不同服务器上代码差别的shell的脚本

简介: 检测不同服务器上代码差别

本脚本来自有学习阿铭的博文学习:
在生产中,为了防止高并发,单点,灾变,和负载均衡等一些突发情况,会将多台服务器用来跑用一代码。但是如果上线的代码出现了问题,将导致代码不一样的情况。

#!/bin/bash
#用途:检测不同服务器上代码差别的shell的脚本。
#作者:Caron maktini
#日期:2018年10月18日
#版本:v0.1

#假设B机器IP地址为192.168.0.1

B_ip=192.168.0.1 
dir=/data/wwwroot/www.abd.com
#首先检查/tmp/md5.list文件是否存在,存在的话就删除掉,避免影响后续操作
[ -f /tmp/md5.list ] && rm -f /tmp/md5.list

#把除了uploads以及tmp目录外其他目录下的全部文件列出来 
  cd $ dir 
    find . \( -path "/uploads*" -o  -path  "./tmp*" \) 

#用while循环,求出所有文件的md5值,并写入一个文件里 
  cat  /tmp/file.Iist l while read line 
  do 
      md5sum  $line 
  done  >>  /tmp/md5.Iist 

#将md5.list拷贝到B机器 
scp  /tmp/md5.Iist  $B_ip:/tmp/ 

#判断/tmp/check_md5.sh文件是否存在 
[ -f  /tmp/check_md5.sh &&  rm -f  /tmp/check_md5.sh ]

#用Here Document编写check_md5.sh脚本内容 
cat > /tmp/check_md5. sh << EOF 

#!/bin/bash 
dir=/data/wwwroot/www.abd.com 
##注意,这里涉及到的特殊符号都需要脱义,比如反引号和$ 

n=\`wc -l /tmp/md5.list | awk '{print \ $1}'`\ 
for i in \`sep 1 \$n\`\
do 
    file_name=\` sed -n "\$i"p  /tmp/md5.list I awk '{print \$1}'\` 
    md5=\`sed -n  "\$i" p  /tmp/md5.Iist  l awk '{print \$2 }'\`
    if  [ -f  \$file_name ] 
    then 
      md5_b= \`md5sum  \$file_name\` 
    if  [  \$md5_b  != \$md5  ]
    then 
        echo  " \$file_name changed" 
    fi 
    else 
        echo  " \$file_name lose " 
    fi 
done  >   /data/change. Iog 
EOF 
scp  /tmp/check_md5.sh  $B_ip:/tmp/ 
ssh $B_ip  "/bin/bash  /tmp/check_md5.sh" 
相关文章
|
1月前
|
Shell
一个用于添加/删除定时任务的shell脚本
一个用于添加/删除定时任务的shell脚本
75 1
|
17天前
|
Shell Linux 测试技术
6种方法打造出色的Shell脚本
6种方法打造出色的Shell脚本
40 2
6种方法打造出色的Shell脚本
|
3天前
|
XML JSON 监控
Shell脚本要点和难点以及具体应用和优缺点介绍
Shell脚本在系统管理和自动化任务中扮演着重要角色。尽管存在调试困难、可读性差等问题,但其简洁高效、易于学习和强大的功能使其在许多场景中不可或缺。通过掌握Shell脚本的基本语法、常用命令和函数,并了解其优缺点,开发者可以编写出高效的脚本来完成各种任务,提高工作效率。希望本文能为您在Shell脚本编写和应用中提供有价值的参考和指导。
13 1
|
8天前
|
Ubuntu Shell 开发工具
ubuntu/debian shell 脚本自动配置 gitea git 仓库
这是一个自动配置 Gitea Git 仓库的 Shell 脚本,支持 Ubuntu 20+ 和 Debian 12+ 系统。脚本会创建必要的目录、下载并安装 Gitea,创建 Gitea 用户和服务,确保 Gitea 在系统启动时自动运行。用户可以选择从官方或小绿叶技术博客下载安装包。
22 2
|
22天前
|
监控 网络协议 Shell
ip和ip网段攻击拦截系统-绿叶结界防火墙系统shell脚本
这是一个名为“小绿叶技术博客扫段攻击拦截系统”的Bash脚本,用于监控和拦截TCP攻击。通过抓取网络数据包监控可疑IP,并利用iptables和firewalld防火墙规则对这些IP进行拦截。同时,该系统能够查询数据库中的白名单,确保合法IP不受影响。此外,它还具备日志记录功能,以便于后续分析和审计。
43 6
|
18天前
|
运维 监控 Shell
深入理解Linux系统下的Shell脚本编程
【10月更文挑战第24天】本文将深入浅出地介绍Linux系统中Shell脚本的基础知识和实用技巧,帮助读者从零开始学习编写Shell脚本。通过本文的学习,你将能够掌握Shell脚本的基本语法、变量使用、流程控制以及函数定义等核心概念,并学会如何将这些知识应用于实际问题解决中。文章还将展示几个实用的Shell脚本例子,以加深对知识点的理解和应用。无论你是运维人员还是软件开发者,这篇文章都将为你提供强大的Linux自动化工具。
|
1月前
|
IDE 网络安全 开发工具
IDE之vscode:连接远程服务器代码(亲测OK),与pycharm链接服务器做对比(亲自使用过了),打开文件夹后切换文件夹。
本文介绍了如何使用VS Code通过Remote-SSH插件连接远程服务器进行代码开发,并与PyCharm进行了对比。作者认为VS Code在连接和配置多个服务器时更为简单,推荐使用VS Code。文章详细说明了VS Code的安装、远程插件安装、SSH配置文件编写、服务器连接以及如何在连接后切换文件夹。此外,还提供了使用密钥进行免密登录的方法和解决权限问题的步骤。
356 0
IDE之vscode:连接远程服务器代码(亲测OK),与pycharm链接服务器做对比(亲自使用过了),打开文件夹后切换文件夹。
|
1月前
|
IDE 网络安全 开发工具
IDE之pycharm:专业版本连接远程服务器代码,并配置远程python环境解释器(亲测OK)。
本文介绍了如何在PyCharm专业版中连接远程服务器并配置远程Python环境解释器,以便在服务器上运行代码。
286 0
IDE之pycharm:专业版本连接远程服务器代码,并配置远程python环境解释器(亲测OK)。
|
5天前
|
机器学习/深度学习 人工智能 弹性计算
什么是阿里云GPU云服务器?GPU服务器优势、使用和租赁费用整理
阿里云GPU云服务器提供强大的GPU算力,适用于深度学习、科学计算、图形可视化和视频处理等多种场景。作为亚太领先的云服务提供商,阿里云的GPU云服务器具备灵活的资源配置、高安全性和易用性,支持多种计费模式,帮助企业高效应对计算密集型任务。
|
7天前
|
存储 分布式计算 固态存储
阿里云2核16G、4核32G、8核64G配置云服务器租用收费标准与活动价格参考
2核16G、8核64G、4核32G配置的云服务器处理器与内存比为1:8,这种配比的云服务器一般适用于数据分析与挖掘,Hadoop、Spark集群和数据库,缓存等内存密集型场景,因此,多为企业级用户选择。目前2核16G配置按量收费最低收费标准为0.54元/小时,按月租用标准收费标准为260.44元/1个月。4核32G配置的阿里云服务器按量收费标准最低为1.08元/小时,按月租用标准收费标准为520.88元/1个月。8核64G配置的阿里云服务器按量收费标准最低为2.17元/小时,按月租用标准收费标准为1041.77元/1个月。本文介绍这些配置的最新租用收费标准与活动价格情况,以供参考。