is there any gem that will watch for a file and if the file exists, or
changes, can trigger process or event. i am looking for something on
the windows platform only.
appreciate any help.
On Sep 20, 2008, at 7:17 PM, Junkone wrote:
is there any gem that will watch for a file and if the file exists, or
changes, can trigger process or event. i am looking for something on
the windows platform only.
appreciate any help.
Take a look at directory_watcher. It works on all platforms.
http://codeforpeople.rubyforge.org/directory_watcher/
Blessings,
TwP
On Sep 20, 11:15 pm, Tim P. [email protected] wrote:
Blessings,
TwP
i tried as you suggested and have a few q.
i am trying to run a ruby prog to execute if there is any new file in
a directory. i started out with the examples but am a little confused
on how to useit.
this prog seems to be looking at the current directory where it is
running and not where i had specificed it to watch with dw.glob.
appreciate any help.
seede
require ‘directory_watcher’
dw = DirectoryWatcher.new ‘.’, :pre_load => true
dw.glob = “c:\temp\scans\” # is the directory i want to watch.
dw.add_observer {|*args| args.each {|event| puts event}}
dw.start
gets
dw.stop
Junkone wrote:
On Sep 20, 11:15�pm, Tim P. [email protected] wrote:
Blessings,
TwPi tried as you suggested and have a few q.
i am trying to run a ruby prog to execute if there is any new file in
a directory. i started out with the examples but am a little confused
on how to useit.
this prog seems to be looking at the current directory where it is
running and not where i had specificed it to watch with dw.glob.appreciate any help.
seede
(…)
Hm, I can’t get it to work either (on WinXP).
require ‘directory_watcher’
dw = DirectoryWatcher.new ‘D:/temp/’
dw.interval=5
dw.add_observer {|*args| args.each {|event| puts event}}
dw.start
gets
dw.stop
It does display the files (“added ‘D:/temp/Pink_Pajamas.amv’” etc), but
after that you can delete, add and edit files without directory_watcher
noticing anything. Is it broken on windows or am I doing something
wrong?
Regards,
Siep
On Sep 22, 2008, at 4:36 PM, Siep K. wrote:
this prog seems to be looking at the current directory where it is
dw = DirectoryWatcher.new ‘D:/temp/’
noticing anything. Is it broken on windows or am I doing something
wrong?
The whole program is blocking on the “gets”.
On the windows platform, all threads block when reading from standard
input. So the “gets” is causing all threads to wait including the
directory watcher thread.
Try replacing the “gets” with a “sleep 30” or some other time interval.
Blessings,
TwP