【问题标题】:Can i monitor the file re-name event on linux?我可以在 linux 上监控文件重命名事件吗?
【发布时间】:2017-06-20 20:12:21
【问题描述】:

通常我使用节点将一些服务器消息记录到本地文件中,但有时文件太大,所以我会通过 logroate 工具定期归档这个大文件(等:将 linz.log 移动到 linz-2017- 06-19.log,现在linz.log文件是空的,但是有时候node还是会把数据写入linz-2017-06-19.log,我猜,可能是linz.log描述符没变)

【问题讨论】:

标签: c linux events


【解决方案1】:

您可以使用inotifywait

inotifywait 使用 Linux 的 inotify(7) 接口有效地等待对文件的更改。它适用于等待 shell 脚本对文件的更改。它可以在事件发生时退出,也可以在事件发生时继续执行和输出。

例子:

touch /tmp/foofile
inotifywait -e move /tmp/
mv /tmp/foofile /tmp/barfile

来自 inotifywait 的输出

Setting up watches.
Watches established.
/tmp/ MOVED_FROM foofile

【讨论】:

  • 您可能应该显示代码来执行此操作,而不是命令。 Stack Overflow 是一个编程和开发问题的网站。编程答案在这里适用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-01-27
  • 2018-10-26
  • 2011-03-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-12
相关资源
最近更新 更多