您好我想制作一个小的ruby脚本,以便在我的图像打开时提醒我。
我尝试:
filename = "photo.jpg"
loop do
sleep(1)
if system %Q[lsof #{filename}]
puts "File open"
end
end
但是它没有用......有什么想法吗?
答案 0 :(得分:2)
试试这个例子:
touch hello_world.log
tail -f hello_world.log
输入以下代码:
filename = "hello_world.log"
loop do
sleep(1)
if system %Q[lsof #{filename}]
puts "File open"
end
end
您可能希望查看inotify(Ruby gem rb-inotify),因为这可能是您想要的。假设有人使用文本编辑器打开文件然后保存它,保存事件可能不会显示在lsof
下,因为它每秒轮询一次(并且随后只显示出现在的信息)非常重要,所以你可能永远都不会抓住它。)