iis服务器助手广告广告
返回顶部
首页 > 资讯 > 操作系统 >如何编写一个监控LINUX目录和文件变化的Shell脚本
  • 868
分享到

如何编写一个监控LINUX目录和文件变化的Shell脚本

2023-06-09 18:06:59 868人浏览 安东尼
摘要

本篇内容主要讲解“如何编写一个监控linux目录和文件变化的shell脚本”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何编写一个监控LINUX目录和文件变化的Shell脚本”吧!脚本1:将需

本篇内容主要讲解“如何编写一个监控linux目录和文件变化的shell脚本”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何编写一个监控LINUX目录和文件变化的Shell脚本”吧!

脚本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脚本”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: 如何编写一个监控LINUX目录和文件变化的Shell脚本

本文链接: https://www.lsjlt.com/news/257374.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何编写一个监控LINUX目录和文件变化的Shell脚本
    本篇内容主要讲解“如何编写一个监控LINUX目录和文件变化的Shell脚本”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何编写一个监控LINUX目录和文件变化的Shell脚本”吧!脚本1:将需...
    99+
    2023-06-09
  • Shell脚本如何监控目录内文件改动
    这篇文章将为大家详细讲解有关Shell脚本如何监控目录内文件改动,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。具体代码如下所示:#! /bin/bashwebroot="/home/w...
    99+
    2023-06-09
  • 如何编写一个Linux系统安全设置的Shell脚本
    本篇内容介绍了“如何编写一个Linux系统安全设置的Shell脚本”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!我们将常用的系统安全配置制作...
    99+
    2023-06-09
  • 如何编写Shell脚本使Nagios插件监控程序资源占用
    本篇内容主要讲解“如何编写Shell脚本使Nagios插件监控程序资源占用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何编写Shell脚本使Nagios插件监控程序资源占用”吧!一、shel...
    99+
    2023-06-09
  • 如何用Shell脚本统计当前目录下目录和文件的数量
    这篇文章主要讲解了“如何用Shell脚本统计当前目录下目录和文件的数量”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何用Shell脚本统计当前目录下目录和文件的数量”吧!下面用shell写...
    99+
    2023-06-09
  • 如何编写shell替换文件中的文件路径脚本
    本篇内容介绍了“如何编写shell替换文件中的文件路径脚本”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!用法参数1、写有需要替换路径记录的文...
    99+
    2023-06-09
  • 如何实现批量转换目录下文件编码的shell脚本
    这篇文章将为大家详细讲解有关如何实现批量转换目录下文件编码的shell脚本,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一例批量转换目录下文件编码的shell脚本代码。需求描述:由于从window转lin...
    99+
    2023-06-09
  • 如何编写一个下载网页图片的shell脚本
    这篇文章主要介绍“如何编写一个下载网页图片的shell脚本”,在日常操作中,相信很多人在如何编写一个下载网页图片的shell脚本问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何编写一个下载网页图片的shel...
    99+
    2023-06-09
  • 如何编写一个强大的网络分析shell脚本
    本篇内容介绍了“如何编写一个强大的网络分析shell脚本”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!脚本运行效果截图:此脚本包含的功能有:...
    99+
    2023-06-09
  • 如何编写一个测试下载速度的shell脚本
    本篇内容主要讲解“如何编写一个测试下载速度的shell脚本”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何编写一个测试下载速度的shell脚本”吧!在Linux下用Shell来测试下载度,代码...
    99+
    2023-06-09
  • 如何编写监控网站是否可以正常打开的Shell脚本
    本篇内容介绍了“如何编写监控网站是否可以正常打开的Shell脚本”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!代码如下:#!/bin/bas...
    99+
    2023-06-09
  • 如何编写一个shell for循环与case结合的脚本
    这篇文章主要讲解了“如何编写一个shell for循环与case结合的脚本”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何编写一个shell for循环与case结合的脚本”吧!核心代码:...
    99+
    2023-06-09
  • shell脚本如何编写ping包及arp的监控并发送短信功能
    这篇文章主要为大家展示了“shell脚本如何编写ping包及arp的监控并发送短信功能”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“shell脚本如何编写ping包及arp的监控并发送短信功能”...
    99+
    2023-06-09
  • 如何利用Shell脚本实现邮件监控Linux系统的内存
    这篇文章主要为大家展示了“如何利用Shell脚本实现邮件监控Linux系统的内存”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何利用Shell脚本实现邮件监控Linux系统的内存”这篇文章吧。...
    99+
    2023-06-15
  • 如何使用rsync备份文件/目录到Linux服务器上的Shell脚本
    这篇文章将为大家详细讲解有关如何使用rsync备份文件/目录到Linux服务器上的Shell脚本,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。使用该脚本会以交互的方式实施备份,你需要提供远程...
    99+
    2023-06-28
  • linux中如何保留文件系统下剩余指定数目文件的shell脚本
    这篇文章主要介绍了linux中如何保留文件系统下剩余指定数目文件的shell脚本,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。例子:代码如下:#!/bin/bash #---...
    99+
    2023-06-09
  • linux如何创建一个目录的iso镜像文件
    ...
    99+
    2024-04-02
  • 如何用linux批量备份服务器配置文件和目录的脚本
    本篇内容介绍了“如何用linux批量备份服务器配置文件和目录的脚本”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!功能:1. 只在备份机执行,...
    99+
    2023-06-09
  • 基于Go语言的Shell脚本编写,如何记录日志并优化LeetCode算法?
    随着Go语言的日益流行,越来越多的开发者开始使用Go语言编写Shell脚本,以提高脚本的执行效率和可读性。本文将介绍如何使用Go语言编写Shell脚本,并利用其强大的日志记录功能来优化LeetCode算法。 一、Go语言与Shell脚本 G...
    99+
    2023-06-20
    shell 日志 leetcode
  • 如何解决shell脚本中执行时提示“没有那个文件或目录”的问题
    本篇内容主要讲解“如何解决shell脚本中执行时提示“没有那个文件或目录”的问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何解决shell脚本中执行时提示“没有那个文件或目录”的问题”吧!...
    99+
    2023-06-09
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作