2017-03-27 15 views
0

私は実際に質問を策定する方法を知らないが、ここにある。FSNotifyは実行中に時計ディレクトリを追加します

私はfsnotifyを使用していくつかのディレクトリの変更を監視しています。ファイルが変更されたら、その変更を別のディレクトリに同期します。しかし、私は新しく作成されたディレクトリも時計に追加したいと思っています。実際には機能していません。

は、ここに私のコードです:

func Watcher() { 
    watcher, err := fsnotify.NewWatcher() 
    defer watcher.Close() 

    done := make(chan bool) 
    go func() { 
     for { 
      select { 
      case event := <-watcher.Events: 

        if file.Mode().IsDir() { 
        err = os.Mkdir(dest, 0755) 
        err = watcher.Add(dest) 

      } 
     case err := <-watcher.Errors: 
      log.Println("error:", err) 
     } 
    } 
    }() 

    dirs, err := readLines("dirs") 
    for _, el := range dirs { 
     err = watcher.Add(el) 
    } 
    check(err) 
    <-done 
} 

機能がはるかに長いですが、私は非重要な部分を削除しました。 err = watcher.Add(dest)を除きすべて動作します。

これ以上のディレクトリを監視するにはどうすればよいですか?

答えて

0

うまくいきましたが、いくつかの変数が間違っています。 watcher.Add(dest)の代わりにwatcher.Add(event.Name)にする必要があります。

関連する問題