bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

如何編寫一個監控LINUX目錄和文件變化的Shell腳本-創新互聯

本篇內容主要講解“如何編寫一個監控LINUX目錄和文件變化的Shell腳本”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“如何編寫一個監控LINUX目錄和文件變化的Shell腳本”吧!

創新互聯主營瓜州網站建設的網絡公司,主營網站建設方案,成都app開發,瓜州h5小程序開發搭建,瓜州網站營銷推廣歡迎瓜州等地區企業咨詢

腳本1:將需要監控的目錄的原始狀態保存到LOG日志
腳本2:將腳本1的原始狀態與本腳本比對,如果目錄文件發生變化,則將變化的內容保存到日志。

注:原理實際上利用的是du -sb輸出值來判斷文件的變化,再利用diff進行比對。

1.在執行腳本前要保存原始的狀態:

# vi initial.sh


代碼如下:


#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin/:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
# 監控的目錄
DIR=/root
# 臨時文件
TMP_A=/tmp/a.txt
# 遍歷指定目錄下的文件大小及路徑并重定向到日志文件
find $DIR -print0 | xargs -0 du -sb  > $TMP_A



2.執行監控腳本
# vi monitor.sh


代碼如下:


#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin/:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
# 監控的目錄
DIR=/root
# 日期變量
DATE=`date +%F_%H:%M`
# 臨時文件
TMP_A=/tmp/a.txt
TMP_B=/tmp/b.txt
TMP_C=/tmp/c.txt
# 日志文件
LOG=/var/log/filemodify.log
# 遍歷指定目錄下的文件大小及路徑并重定向到日志文件
find $DIR -print0 | xargs -0 du -sb  > $TMP_B
# 比較目錄變化,并將變化的文件寫入日志
DIFF=$(diff $TMP_A $TMP_B)
if [[ -z $DIFF ]];
 then
   echo "Nothing change" >> $LOG
 else
   echo "Here is the change" >> $LOG
   echo "" >> $LOG
   echo "$DIFF" |awk '{print $3}'|sort -k2n |uniq |sed '/^$/d' |tee $TMP_C >> $LOG
   if [ -s $TMP_C ];
     then
       echo "" >> $LOG
       echo "It modified at $DATE" >> $LOG
# 將當前監控的目錄結構覆蓋為初始狀態
       find $DIR -print0 | xargs -0 du -sb  > $TMP_A
   fi
fi
echo "====================================" >> $LOG
#清理臨時文件
rm -rf $TMP_B $TMP_C


到此,相信大家對“如何編寫一個監控LINUX目錄和文件變化的Shell腳本”有了更深的了解,不妨來實際操作一番吧!這里是創新互聯建站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

文章名稱:如何編寫一個監控LINUX目錄和文件變化的Shell腳本-創新互聯
本文地址:http://vcdvsql.cn/article4/pppie.html

成都網站建設公司_創新互聯,為您提供面包屑導航App設計響應式網站商城網站營銷型網站建設網站收錄

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

微信小程序開發