如何使用Ruby listen gem监视单个文件?

如何使用Ruby listen gem监视单个文件?,第1张

概述我正在尝试使用listen gem( https://github.com/guard/listen)来监听特定文件,但到目前为止只能获得正确监听整个目录的基本功能. 这是我现在正在尝试的一个例子: require "listen"module FileTracker filedir = "/home/user/dir" filenames = [ "file1", "file2" ] 我正在尝试使用Listen gem( https://github.com/guard/listen)来监听特定文件,但到目前为止只能获得正确监听整个目录的基本功能.

这是我现在正在尝试的一个例子:

require "Listen"module fileTracker  filedir = "/home/user/dir"  filenames = [ "file1","file2" ]  # Should only track 'file1' and 'file2' in this directory  Listener = Listen.to(filedir,only: filenames) do |modifIEd,added,removed|    puts "Updated: " + modifIEd.first  end  Listener.start  sleepend

我也试过简单地将单个文件名指定为唯一:参数的字符串,但这也不起作用.

我的最终目标是能够跟踪各种目录中的用户定义文件列表以进行更改.我只想跟踪每个特定的文件,而不是整个目录.

解决方法 我没注意到我在这里做的事情.只有:显然需要一个正则表达式,我显然没有构建和提供.希望这可以帮助其他可能需要使用听取观看或忽略特定文件的人.

以下是我工作解决方案的示例:

module fileTracker  filedir = "/home/user/dir"  filenames = [ "file1","file2" ]  ListenRegex = filenames.join("$|").gsub!(".","\.") + "$"  # Should only track 'file1' and 'file2' in this directory  Listener = Listen.to(filedir,only: /#{ListenRegex}/) do |modifIEd,removed|    puts "Updated: " + modifIEd.first  end  Listener.start  sleepend
总结

以上是内存溢出为你收集整理的如何使用Ruby listen gem监视单个文件?全部内容,希望文章能够帮你解决如何使用Ruby listen gem监视单个文件?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1286765.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存