Closed. This question is off-topic。它当前不接受答案。












想改善这个问题吗? Update the question,所以它是用于堆栈溢出的on-topic

7年前关闭。



Improve this question




是否有人拥有可以监视特定目录并查看在特定时间段内(可能增加了多少)正在增长的文件的Shell脚本或实用程序?

例如,如果我在目录中有以下文件:
myfile1.txt
anotherfile.gz
thisonetoo.tar

该脚本可以运行一次,然后在下一次运行时可能会显示类似以下内容
myfile1.txt +5MB
anotherfile.gz -10MB
thisonetoo.tar +100MB

最佳答案

我有一个使用inotifywaitbash的好方法:

cd /path/to/dir
inotifywait -m -e modify  -r . |
while read a; do
    [[ $a =~ MODIFY[[:space:]]+(myfile1.txt|anotherfile.gz|thisonetoo.tar) ]] &&
    du -h "${BASH_REMATCH[1]}"
done

注意

这样做的好处是避免每N秒轮询一次。



参见inotify doc

(这只是一个开始,您需要更多代码才能获得所需的输出,但是现在这很容易)

09-11 17:46
查看更多