檢測不同伺服器上程式碼差別的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"
相關文章
- 程式碼上線的shell指令碼指令碼
- sysbench壓測MyCAT的shell指令碼指令碼
- 欄位型別檢測指令碼型別指令碼
- 通過shell指令碼檢測MySQL服務資訊指令碼MySql
- shell指令碼:$(())與$()還有${}的區別指令碼
- 透過shell指令碼檢視procedure的資訊指令碼
- 透過shell指令碼檢視package的資訊指令碼Package
- 通過shell指令碼檢視procedure的資訊指令碼
- 通過shell指令碼檢視package的資訊指令碼Package
- shell指令碼企業巡檢指令碼
- 檢測mysql狀態的指令碼MySql指令碼
- 【shell 指令碼】檢視*.gz 檔案的內容指令碼
- shell 指令碼實現的守護程式指令碼
- BASH Shell的指令碼程式設計(轉)指令碼程式設計
- 通用程式部署shell指令碼指令碼
- 根據ip列表檢測主機狀態(shell指令碼)指令碼
- 在shell指令碼中呼叫另一個指令碼的三種不同方法(fork, exec, source)指令碼
- 利用SHELL指令碼實現檔案完整性檢測程式(1.2版更新)指令碼
- 如何使用 Shell 指令碼掩蓋 Linux 伺服器上的操作痕跡?指令碼Linux伺服器
- 資料匯出shell指令碼(上)指令碼
- js檢測上傳檔案型別程式碼例項JS型別
- 如何使用 Shell 指令碼來檢視多個伺服器的埠是否開啟?指令碼伺服器
- shell指令碼指令碼
- 史上最全shell指令碼程式設計語法上冊指令碼程式設計
- Shell指令碼 – 檢視網路介面資訊指令碼
- 透過shell指令碼檢視鎖資訊指令碼
- 通過shell指令碼檢視鎖資訊指令碼
- Shell 指令碼程式設計陷阱指令碼程式設計
- 直播程式碼是如何工作的,不同伺服器之間的區別伺服器
- 30個關於Shell指令碼的經典案例(上)指令碼
- Shell指令碼程式設計規範與變數(shell指令碼必須要知道的規矩!)指令碼程式設計變數
- 使用Shell指令碼查詢程式對應的程式ID指令碼
- 利用shell指令碼統計程式碼行數指令碼
- 設定Linux伺服器IP地址的shell指令碼Linux伺服器指令碼
- 伺服器被DDOS攻擊防禦的SHELL指令碼伺服器指令碼
- shell指令碼頭,#!/bin/sh與#!/bin/bash的區別.指令碼
- 巧用shell指令碼生成快捷指令碼指令碼
- 最近的shell指令碼(updating)指令碼