Sie können fswatch
verwenden, die ich am einfachsten über homebrew
installieren kann. Und ja, es verwendet FSEvents. Dann tun Sie gerade:
fswatch /Volumes/MUSIC
wo MUSIC
ein Samba-basierten Musik-Server in meinem Netzwerk.
Hier ist, wie es in Aktion aussieht ... zuerst zeige ich die gemounteten Volumes (und das MUSIC ist Samba basiert) im oberen Fenster, dann starte ich fswatch
im unteren linken Fenster, dann mache ich Änderungen im Dateisystem im oberen Fenster und Sie können sehen, dass sie im Finder geschehen und sehen Sie auch im unteren linken Fenster, dass fswatch
alle Ereignisse verfolgt.
Sie können es auch mit einem anderen Programm zu interagieren, wenn Ereignisse erkannt werden, wie dies (aus dem fswatch
manpage extrahiert):
wahrscheinlich die einfachste Weg, um Rohr fswatch
auf ein anderes Programm, um reagieren auf ein Ereignis ist mit xargs:
$ fswatch -0 [opts] [paths] | xargs -0 -n 1 -I {} [command]
fswatch -0 teilt Datensätze mit dem NUL-Zeichen auf.
xargs -0 teilt Datensätze unter Verwendung des NUL-Zeichens auf. Dies ist erforderlich, um die Impedanz mit fswatch korrekt zu verbinden.
xargs -n 1 ruft den Befehl für jeden Datensatz auf. Wenn Sie alle x Datensätze verwenden möchten, verwenden Sie xargs -n x.
xargs -I {} ersetzt die Vorkommen von {} im Befehl mit dem analysierten Argument. Wenn der Befehl, den Sie ausführen, nicht den Namen des Ereignispfads benötigt, löschen Sie diese Option. Wenn Sie eine andere Ersatzzeichenfolge verwenden möchten, ersetzen Sie {} durch Ihre.
Wenn das File-Sharing-Protokoll eine Möglichkeit für den Server enthält, den Client über Änderungen zu informieren (und ich kenne keine Protokolle, die dies tun), wird es nicht möglich sein. –
Das macht Sinn, aber trotzdem: Wie macht der Finder das? – Jamie
@Gordon - NTFS und SMB erlauben Clientbenachrichtigungen von Änderungen (sogar gemappte Netzlaufwerke, wenn es ein Windows-System ist, auf dem NTFS läuft). Aber die Linux-Maschinen, mit denen ich SAMBA gestartet habe, feuern das Ereignis nicht ab. Es ist also so, als ob nur Microsoft das Feature zur Verfügung stellt, obwohl jeder Anbieter es anbieten könnte. – jww