gpt4 book ai didi

linux - 监控文件变化位置和长度

转载 作者:太空宇宙 更新时间:2023-11-04 12:29:49 26 4
gpt4 key购买 nike

使用inotify很容易监控文件变化。但是当我写入文件时,Inotify只能回复带有文件名和一些文件属性的IN_MODIFY事件。我如何在变化中获取新添加内容的起始位置和内容长度文件?有什么api可以解决这个问题吗?

最佳答案

您可以制作额外的脚本来观察 inotify 日志并检查某些文件列表中的更改,然后记录大小更改,示例:

#!/bin/bash
for n in `cat /etc/inotify/special_files_list.conf`; do
FOUND_CHANGES=`tail -n 10000 /var/log/inotify.log | grep `$cur_date_with_hour` | grep $n`
PREVIOUS_FILE_SIZE=`/var/log/inotify-special.log | cut -d ';' -f 0`
FILE_SIZE=stat -c "%s" `cut -d ';' -f 0,1`
file_size_diff = `expr $PREVIOUS_FILE_SIZE - $FILE_SIZE`
if [ file_size_diff !-eq 0 ]; then
echo "$FOUND_CHANGES;" >> /var/log/inotify-special.log
fi
done
...

关于linux - 监控文件变化位置和长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43583655/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com