无法听到宝石上班

时间:2013-10-08 18:25:25

标签: ruby

我只是想让listen gem正常工作,并尝试了the documentation中的基本示例。

以下是我刚试过的内容,以及有关我的安装的一些信息。我在CentOS上运行。

$ uname -a
Linux www14405ue.sakura.ne.jp 2.6.32-279.2.1.el6.x86_64 #1 SMP Fri Jul 20 01:55:29 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
$ ruby --version
ruby 2.0.0p0 (2013-02-24 revision 39474) [x86_64-linux]
$ gem install listen
....
6 gems installed
$ gem list listen

*** LOCAL GEMS ***

listen (2.0.1)
$ mkdir foo
$ cd foo
$ mkdir bar
$ vim listen.rb
$ cat listen.rb
require 'listen'
listener = Listen.to('bar') do |modified, added, removed|
  puts "modified absolute path: #{modified}"
  puts "added absolute path: #{added}"
  puts "removed absolute path: #{removed}"
end
listener.start # not blocking
sleep
$ ruby listen.rb
$ echo "baz" > bar/baz   # from the same directory in another terminal
$ echo "qux" >> bar/baz  # a moment later 
$ rm bar/baz             # again a moment later

我原本期望两个echorm的输出,但我没有得到任何结果。我尝试将监听路径从bar更改为./bar,但这也无济于事。

我在这里缺少什么?

2 个答案:

答案 0 :(得分:0)

  1. 它应该是目录的完整路径
  2. 它必须是真正的文件系统 - 不能使用tmpfs

答案 1 :(得分:0)

我真的不明白为什么,但似乎问题是我在~/tmp目录下工作。更改工作目录后,一切正常。我不确定为什么,但无论如何都解决了这个问题。