通过 Lua 脚本进行文件监控

File-Monitoring via Lua Script

晚上好,

我目前正在开发一种将机器创建的数据从 csv sheet 导入数据库的方法。 我的问题是,有没有办法对 Lua.

的 csv 文件中的更改做出反应

文件中有一行格式如下:

17162H,"801234500001",9/23/2016 12:33:30 PM,"INV"

每次扫描器完成一次扫描过程,在旧行下添加,但没有直接连接到数据库,以触发脚本。

通过不同的文件大小、文件夹大小(包含文件的文件夹)或文件信息(如上次打开日期)中的更改检测到更改并不重要,但我不能由于性能原因,永久打开并阅读它。

也是我第一次在这里提问,很抱歉我笨拙的方式,我会随着时间的推移努力提高自己。

看看 linotify,它有 lua 个 inotify 绑定,看起来应该可以解决问题,使用 "modify" 事件触发您的脚本。

如果您需要 运行 在 Windows 上使用它,您可以使用 winapi library, which supports file watchers. Here is an example 了解它在我的一个项目中的使用方式;您需要致电 winapi.sleep() 以便有时间触发检查。

我在 spylog apllication 中使用基于 LibUV 的变体 用法:

file_monitor(path_to_file, {eol = '\r?\n'}, function(line)
  ... 
end)