溫馨提示×

ubuntu inotify如何檢測文件修改時間

小樊
35
2025-08-27 22:17:20
欄目: 智能運維

在Ubuntu系統中,inotify是一個用于監控文件系統事件的Linux內核子系統。你可以使用inotifywait命令行工具來檢測文件的修改時間。inotifywaitinotify-tools包的一部分,因此首先需要安裝這個包。

  1. 安裝inotify-tools
sudo apt-get update
sudo apt-get install inotify-tools
  1. 使用inotifywait監控文件修改時間:

創建一個名為monitor.sh的腳本文件,并添加以下內容:

#!/bin/bash

# 監控的文件路徑
file_path="/path/to/your/file"

# 使用inotifywait監控文件修改事件
inotifywait -m -e modify "$file_path" |
while read path action file; do
  # 當文件被修改時,獲取文件的修改時間
  mod_time=$(stat -c %y "$file_path")
  echo "File $file was modified at $mod_time"
done

/path/to/your/file替換為你要監控的文件路徑。然后,給予腳本執行權限并運行它:

chmod +x monitor.sh
./monitor.sh

現在,每當文件被修改時,腳本都會輸出文件的修改時間。

注意:inotifywait默認監控的最大文件描述符數量可能不足以滿足你的需求。如果遇到問題,請嘗試增加fs.inotify.max_user_watches的值。例如,將其設置為524288:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女