通过 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)
晚上好,
我目前正在开发一种将机器创建的数据从 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)