欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Linux inotify監(jiān)聽文件狀態(tài)的操作方法

 更新時間:2018年02月12日 09:44:17   作者:Real_man  
Inotify 是一個 Linux特性,它監(jiān)控文件系統(tǒng)操作,比如讀取、寫入和創(chuàng)建。這篇文章給大家介紹了Linux inotify監(jiān)聽文件狀態(tài)的相關(guān)知識,需要的朋友參考下吧

Inotify 是一個 Linux特性,它監(jiān)控文件系統(tǒng)操作,比如讀取、寫入和創(chuàng)建。Inotify 反應(yīng)靈敏,用法非常簡單,并且比 cron 任務(wù)的繁忙輪詢高效得多。學(xué)習(xí)如何將 inotify 集成到您的應(yīng)用程序中,并發(fā)現(xiàn)一組可用來進一步自動化系統(tǒng)治理的命令行工具。

通俗來說,inotify可以監(jiān)控文件的狀態(tài)并且對變化的狀態(tài)做出一些操作。

安裝

yum install inotify-tools -y


  • inotifywait命令可以用來收集有關(guān)文件訪問信息
  • inotifywatch命令用于收集關(guān)于被監(jiān)視的文件系統(tǒng)的統(tǒng)計數(shù)據(jù),包括每個 inotify 事件發(fā)生多少次。

基本用法

[root@250 nginx]# inotifywait -h
inotifywait 3.14
Usage: inotifywait [ 選項 ] file1 [ file2 ] [ file3 ] [ ... ]

選項:

    @<file>       排除某些文件.
    --exclude <pattern>  排除匹配的文件
    --excludei <pattern> 大小寫不敏感排除指定樣式的文件
    -m|--monitor  保持監(jiān)聽狀態(tài),如果不設(shè)置這個選項,inotifywait只執(zhí)行一次就會退出。
    -d|--daemon   類似于-m,但是在后臺運行,輸出事件到特定的文件可以通過 --outfile. 意味著 --syslog.
    -r|--recursive  遞歸監(jiān)聽目錄
    -s|--syslog     發(fā)送錯誤日志到syslog而不是stderr
    -q|--quiet      靜態(tài)模式,不輸出信息
    -qq             什么都不輸出
    --timefmt <fmt>  時間格式
    -e|--event <event1> [ -e|--event <event2> ... ]
        監(jiān)聽指定的事件,如果不指定,所有的事件都被監(jiān)聽。

Exit status:

    0  -  收到了指定的事件
    1  -  收到了沒有指定的事件,或者出現(xiàn)了一些錯誤
    2  -  沒有收到事件

可以監(jiān)聽的事件:

  access    訪問,讀取文件。
  modify    修改,文件內(nèi)容被修改。
  attrib    屬性,文件元數(shù)據(jù)被修改。
  move  移動,對文件進行移動操作。
  create    創(chuàng)建,生成新文件
  open  打開,對文件進行打開操作。
  close 關(guān)閉,對文件進行關(guān)閉操作。
  delete    刪除,文件被刪除。

案例

只有當nginx的配置文件寫入完成的時候重啟nginx

#!/bin/bash
inotifywait -m -e close_write -r /usr/local/openresty/nginx/conf/ |
while read events;
do
 echo $events;
 nginx -s reload;
 echo "Nginx reloaded!"
done

監(jiān)聽某個目錄下的文件狀態(tài),輸出事件

#!/bin/bash
#filename watchdir.sh
path=$1
/usr/local/bin/inotifywait -mrq --timefmt '%d/%m/%y/%H:%M' --format '%T %[w](http://man.linuxde.net/w "w命令") %f' -e modify,delete,create,attrib $path

總結(jié)

介紹了inotify-tools的一些特性,與命令的使用。

inotify可以監(jiān)控文件的狀態(tài)并且對文件變化的狀態(tài)做出一些自定義操作。

以上所述是小編給大家介紹的Linux inotify監(jiān)聽文件狀態(tài)的操作方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

最新評論