举例:

ip.txt内容如下:

10.1.1.11 root 123
10.1.1.22 root 111
10.1.1.33 root 123456
10.1.1.44 root 54321 写法1: cat ip.txt | while read ip user pass
do
echo "$ip--$user--$pass"
done

 

 我的常用

inotifywait -mr --timefmt "%Y/%m/%d %H:%M:%S" --exclude "(.swp|.inc|.svn|.rar|.tar.gz|.gz|.log|.zip|.bak)" --format "%w %f %T"  -e create /var/www

/var/www/test/ lal.php 2020/07/26 17:07:54
/var/www/test/ test1.php 2020/07/26 17:08:32

inotifywait -mrq --timefmt "%Y/%m/%d %H:%M:%S" --exclude "(.swp|.inc|.svn|.rar|.tar.gz|.gz|.log|.zip|.bak)" --format "%w %f %T" -e create /var/www |while read dir file time
do
echo "$dir ---- $file ----$time"
done;


/var/www/test/ ---- 99111.php ----2020/07/26 17:11:01
/var/www/test/ ---- lucky.qphp ----2020/07/26 17:11:17

# 新建的文件移动到一个目录(防止未知的后门程序)

inotifywait -mrq --timefmt "%Y/%m/%d %H:%M:%S" --exclude "(.swp|.inc|.svn|.rar|.tar.gz|.gz|.log|.zip|.bak|^/www/wwwroot/project/vendor/*|^/www/wwwroot/project/storage/*)" --format "%w %f %T" -e create /www/wwwroot/project-dir |while read dir file time
do
echo "$dir---$file---$time" >> /home/hack/create.log
mv $dir$file /home/hack
done;

(这里不能加 -o ,使用 screen 后台程序)

 

# 后台运行监控文件变化
inotifywait -mrqd --timefmt "%Y/%m/%d %H:%M:%S" --exclude "(.swp|.inc|.svn|.rar|.tar.gz|.gz|.log|.zip|.bak)" --format "%e %w %f %T" -e create,modify,delete,attrib -o '/home/hack.log' /var/www


#!/bin/bash

DESTHOST=172.16.100.6
DESTHOSTDIR=/www/htdocs/
SRCDIR=/www/htdocs/ inotifywait -mr --timefmt '%d/%m/%y %H:%M' --format '%T %w %f' \
-e create,delete,modify,attrib $SRCDIR | while read DATE TIME DIR FILE; do
$FILECHANGE=${DIR}${FILE} rsync -avze 'ssh' $SRCDIR root@${DESTHOST}:${DESTHOSTDIR} &>/dev/null && \
echo "At ${TIME} on ${DATE}, file $FILECHANGE was backed up via rsync" >> /var/log/filesync.log done

* inotifywait后面的--format '%e %w%f %T',决定了:while read能取到什么值。也就是主程序体中,能用到什么变量。

* 常见组合inotifywait -rmq

% H 小时(00..23)
% I 小时(01..12)
% k 小时(0..23)
% l 小时(1..12)
% M 分(00..59)
% p 显示出AM或PM
% r 时间(hh:mm:ss AM或PM),12小时
% s 从1970年1月1日00:00:00到目前经历的秒数
% S 秒(00..59)
% T 时间(24小时制)(hh:mm:ss)
% X 显示时间的格式(%H:%M:%S)
% Z 时区 日期域
% a 星期几的简称( Sun..Sat)
% A 星期几的全称( Sunday..Saturday)
% b 月的简称(Jan..Dec)
% B 月的全称(January..December)
% c 日期和时间( Mon Nov 8 14:12:46 CST 1999)
% d 一个月的第几天(01..31)
% D 日期(mm/dd/yy)
% h 和%b选项相同
% j 一年的第几天(001..366)
% m 月(01..12)
% w 一个星期的第几天(0代表星期天)
% W 一年的第几个星期(00..53,星期一为第一天)
% x 显示日期的格式(mm/dd/yy)
% y 年的最后两个数字( 1999则是99)
% Y 年(例如:1970,1996等)

其他:

安装:https://github.com/inotify-tools/inotify-tools/wiki#getting

https://www.cnblogs.com/caidingyu/p/11708851.html

https://blog.csdn.net/ab601026460/article/details/97380081

https://blog.csdn.net/huey2672/article/details/41895341

https://www.cnblogs.com/luoine/articles/4332380.html (rsync和notify 备份文件)

Linux文件监控工具——inotify-tools的更多相关文章

  1. linux设置rsync+inotify实时同步文件

    linux设置rsync+inotify实时同步文件   应用场景: 同步接收方:test01 接收目录:/opt/software/test/a/ 同步发起方:test02 同步目录:/opt/so ...

  2. Linux 文件操作监控inotify功能及实现原理【转】

    转自:http://blog.chinaunix.net/uid-26585427-id-5012973.html 1. inotify主要功能 它是一个内核用于通知用户空间程序文件系统变化的机制. ...

  3. MySQL实时性能监控工具doDBA tools

    doDBA tools是什么? doDBA tools是一个基于控制台的远程监控工具,它不需要在本地/远程系统上安装任何软件,它可以实时收集操作系统.MySQL.InnoDB的实时性能状态数据,并可以 ...

  4. 管理员必备的Linux系统监控工具

    管理员必备的Linux系统监控工具 #1: top - 进程活动 top提供一个当前运行系统实时动态的视图, 也就是正在运行进程.在默认情况下,显示系统 中CPU使用率最高的任务,并每5秒钟刷新一次. ...

  5. 在虚拟机的linux中利用VMware Tools实现与windows共享文件

        很多人都知道安装"VMware Tools"可以实现与windows共享,但是其实它的功能远不止此.安装了"VMware Tools"后,虚拟机的网络. ...

  6. 【转】管理员必备的Linux系统监控工具

    原文连接: 管理员必备的Linux系统监控工具 #1: top - 进程活动 top提供一个当前运行系统实时动态的视图,也就是正在运行进程.在默认情况下,显示系统中CPU使用率最高的任务,并每5秒钟刷 ...

  7. Linux系统性能监控工具介绍之-tsar

    Linux系统性能监控工具介绍之-tsar Linux系统性能监控工具介绍之-tsar 2017-03-02 20:25 175人阅读 评论(0) 收藏 举报  分类: LINUX调优(9)    目 ...

  8. Linux Performance Analysis and Tools(Linux性能分析和工具)

    首先来看一张图: 上面这张神一样的图出自国外一个Lead Performance Engineer(Brendan Gregg)的一次分享,几乎涵盖了一个系统的方方面面,任何人,如果没有完善的计算系统 ...

  9. window与linux文件传输工具

    window与linux文件传输工具 [一般用于SecureCRT ssh中使用] 法一:直接用yum安装lrzsz(推荐) yum install lrzsz -y 注意:rhel安装完系统后 直接 ...

随机推荐

  1. 使用经纬度得到位置Geocorder

    先得到经纬度再用geocorder 显示位置,需要手机打开位置权限,使用GPS的话把注释去掉,GPS在室内很容易收不到信号,得到位置为空 public class MainActivity exten ...

  2. 阿里云服务器SQLSERVER 2019 远程服务器环境搭建【原创】【转载请注明出处】

    之前做过本地服务器SQLSERVER环境搭建.局域网环境SQLSERVER搭建.一直没有尝试自己完成一个云端服务器的环境搭建.今天就根据一个成功的例子给大家分享一下. 一.云端数据库安装与搭建 我的服 ...

  3. js 值类型与引用类型

    说明之前先提一个提问题,看一下你是怎么理解的 1. 值类型 简单的数据类型,存放在栈中 var num = 100; var num2 = num; num += 100; console.log(n ...

  4. JUC---00创建线程的方式

    一.继承Thread类 1 package com.jenne.mydemo; 2 3 public class TestMyThread { 4 public static void main(St ...

  5. 惊呆了!Spring Boot 还能开启远程调试?

    持续原创输出,点击上方蓝字关注我 目录 前言 什么是远程调试? 为什么要远程调试? 什么是JPDA? 如何开启调试? transport server suspend address onthrow ...

  6. JQuery如何实现统计图表

    EEP JQuery如何实现统计图表 讯光科技 前言 在ERP项目开发过程中,统计图表(chart)普遍应用于各种统计和报表中,其形象直观,内容清晰.EEP的JQuery网站项目使用了Easyui 插 ...

  7. Python期中考试程序设计题详解-2

    一.请使用turtle库的turtle.pencolor().turtle.seth().turtle.fd()等函数,绘制一个边长为200的红色等边三角形. 题目解析: (1)本题利用turtle画 ...

  8. 18 . Go之操作Mysql和sqlx使用

    安装mysql wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm yum -y localinstall ...

  9. mshadow入门指南

    mshadow是一个基于表达式模板实现的张量库,在MXNet框架中被广泛使用.这篇文章简单介绍了mshadow的基本用法和特性,文章主要翻译自mshadow/guide/README. 张量数据结构 ...

  10. NB-IOT覆盖能力有多强 是怎么实现的

    NB-IoT技术中出现以来就以其强大的覆盖能力和通信距离长而受到广大使用者的欢迎,那么NB-IoT覆盖能力究竟是有多大,其覆盖能力应该怎么来衡量? 强大的覆盖能力是NB-IoT技术的最大特点之一,不仅 ...