EnglischFranzösischSpanisch

Ad


OnWorks-Favicon

inotifywait – Online in der Cloud

Führen Sie inotifywait beim kostenlosen Hosting-Anbieter OnWorks über Ubuntu Online, Fedora Online, den Windows-Online-Emulator oder den MAC OS-Online-Emulator aus

Dies ist der Befehl inotifywait, der beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann

PROGRAMM:

NAME/FUNKTION


inotifywait – Warten Sie mit inotify auf Änderungen an Dateien

ZUSAMMENFASSUNG


innotifywait [-hcmrq] [-e ] [-t ] [--Format ] [--timefmt ]
[ ... ]

BESCHREIBUNG


innotifywait wartet unter Linux effizient auf Änderungen an Dateien annotieren(7) Schnittstelle. Es
eignet sich zum Warten auf Änderungen an Dateien aus Shell-Skripten. Es kann entweder einmal beendet werden
Ein Ereignis tritt auf, oder Ereignisse werden kontinuierlich ausgeführt und ausgegeben, sobald sie auftreten.

AUSGABE


innotifywait Gibt Diagnoseinformationen zu Standardfehlern und Ereignisinformationen aus
Standardausgabe. Die Ereignisausgabe kann konfiguriert werden, besteht jedoch standardmäßig aus Zeilen
der folgenden Form:

angesehener_Dateiname EVENT_NAMES event_filename

angesehener_Dateiname
ist der Name der Datei, in der das Ereignis aufgetreten ist. Wenn es sich bei der Datei um ein Verzeichnis handelt, a
Es wird ein abschließender Schrägstrich ausgegeben.

EVENT_NAMES
sind die Namen der aufgetretenen Inotify-Ereignisse, getrennt durch Kommas.

event_filename
wird nur ausgegeben, wenn das Ereignis in einem Verzeichnis aufgetreten ist, und in diesem Fall der Name von
Die Datei innerhalb des Verzeichnisses, die dieses Ereignis verursacht hat, wird ausgegeben.

Standardmäßig werden Sonderzeichen in Dateinamen in keiner Weise maskiert. Das
kann es schwierig machen, die Ausgabe von inotifywait in AWK-Skripten oder ähnlichem zu analysieren.
Das --csv und --Format Optionen werden in diesem Fall hilfreich sein.

OPTIONAL


-H, --help
Geben Sie einige hilfreiche Nutzungsinformationen aus.

@
Wenn Sie einen Verzeichnisbaum rekursiv überwachen, schließen Sie die angegebene Datei aus
schaute. Die Datei muss mit einem relativen oder absoluten Pfad angegeben werden
ob für überwachte Verzeichnisse ein relativer oder absoluter Pfad angegeben wird. Wenn ein
Wenn ein bestimmter Pfad explizit sowohl ein- als auch ausgeschlossen wird, wird er immer überwacht.

Hinweis: Wenn Sie ein Verzeichnis oder eine Datei überwachen müssen, deren Name mit @ beginnt, geben Sie das ein
absoluter Pfad.

--aus Datei
Dateinamen lesen, um sie zu überwachen oder aus einer Datei auszuschließen, einen Dateinamen pro Zeile. Wenn
Dateinamen beginnen mit @ und werden wie oben beschrieben ausgeschlossen. Wenn ist „-“,
Dateinamen werden aus der Standardeingabe gelesen. Nutzen Sie diese Option, wenn Sie auch zuschauen möchten
viele Dateien, die als Befehlszeilenargumente übergeben werden müssen.

-M, --Monitor
Anstatt den Vorgang nach dem Empfang eines einzelnen Ereignisses zu beenden, führen Sie ihn auf unbestimmte Zeit aus. Der
Das Standardverhalten besteht darin, nach dem ersten Ereignis zu beenden.

-D, --dämon
Identisch mit --monitor, außer dass im Hintergrund Ereignisse in einer Datei protokolliert werden, die ausgeführt werden muss
durch --outfile angegeben werden. Impliziert --syslog.

-Ö, --outfile
Ereignisse ausgeben an statt Standard.

-S, --syslog
Ausgabefehler an syslog(3) Systemprotokollmodul anstelle von stderr.

-R, - rekursiv
Beobachten Sie alle Unterverzeichnisse aller als Argumente übergebenen Verzeichnisse. Uhren werden sein
rekursiv bis zu einer unbegrenzten Tiefe aufgebaut werden. Symbolische Links werden nicht durchlaufen. Neu
Auch angelegte Unterverzeichnisse werden überwacht.

Warnung: Wenn Sie diese Option verwenden, während Sie das Stammverzeichnis eines großen Baums überwachen,
Es kann eine ganze Weile dauern, bis alle inotify-Uhren eingerichtet sind und Ereignisse vorliegen
wird in dieser Zeit nicht empfangen. Auch da wird man inotify beobachten
Pro Unterverzeichnis festgelegt, ist es möglich, dass die maximale Menge an inotify
Anzahl Uhren pro Benutzer werden erreicht. Der Standardhöchstwert beträgt 8192; es kann erhöht werden
durch Schreiben an /proc/sys/fs/inotify/max_user_watches.

-Q, --ruhig
Bei einmaliger Angabe ist das Programm weniger ausführlich. Konkret wird dies nicht der Fall sein
Geben Sie an, wann die Einrichtung aller inotify-Überwachungen abgeschlossen ist.

Bei doppelter Angabe gibt das Programm überhaupt nichts aus, außer im Fall von
fatale Fehler.

--ausschließen
Verarbeiten Sie keine Ereignisse, deren Dateiname mit der angegebenen POSIX-Erweiterung übereinstimmt
Regulärer Ausdruck, Groß- und Kleinschreibung beachten.

--excludei
Verarbeiten Sie keine Ereignisse, deren Dateiname mit der angegebenen POSIX-Erweiterung übereinstimmt
Regulärer Ausdruck, Groß- und Kleinschreibung wird nicht beachtet.

-t , --Auszeit
Beenden Sie den Vorgang, wenn kein entsprechendes Ereignis aufgetreten ist Sekunden. Wenn
Null ist (Standardeinstellung), wird auf unbestimmte Zeit auf ein Ereignis gewartet.

-e , --Veranstaltung
Hören Sie nur auf bestimmte Ereignisse. Die abhörbaren Ereignisse werden aufgelistet
der Events Abschnitt. Diese Option kann mehr als einmal angegeben werden. Wenn weggelassen,
Alle Ereignisse werden überwacht.

-C, --csv
Ausgabe im CSV-Format (durch Kommas getrennte Werte). Dies ist nützlich, wenn Dateinamen möglicherweise geändert werden
enthalten Leerzeichen, da es in diesem Fall nicht sicher ist, die Ausgabe einfach aufzuteilen
jedes Leerzeichen.

--timefmt
Legen Sie eine Zeitformatzeichenfolge fest, die von akzeptiert wird strftime(3) zur Verwendung mit „%T“
Konvertierung in der Option --format.

--Format
Ausgabe in einem vom Benutzer angegebenen Format unter Verwendung einer printf-ähnlichen Syntax. Die Ereigniszeichenfolgen
Die Ausgabe ist auf etwa 4000 Zeichen begrenzt und wird auf diese Länge gekürzt.
Folgende Konvertierungen werden unterstützt:

%w Dies wird durch den Namen der überwachten Datei ersetzt, in der ein Ereignis aufgetreten ist.

%f Wenn ein Ereignis innerhalb eines Verzeichnisses auftritt, wird dieses durch den Namen des Verzeichnisses ersetzt
Datei, die das Ereignis verursacht hat. Andernfalls wird dies durch ein ersetzt
leerer String.

%e Wird durch das/die aufgetretene(n) Ereignis(e) ersetzt, durch Kommas getrennt.

%Xe Wird durch das/die aufgetretene(n) Ereignis(s) ersetzt, getrennt durch das darin enthaltene Zeichen
die Stelle von „X“.

%T wird durch die aktuelle Zeit in dem durch die Option --timefmt angegebenen Format ersetzt.
Dies sollte eine Formatzeichenfolge sein, die zur Übergabe geeignet ist strftime(3).

EXIT STATUS


0 Das Programm wurde erfolgreich ausgeführt und es ist ein Ereignis aufgetreten, das abgehört wurde
für.

1 Bei der Ausführung des Programms ist ein Fehler aufgetreten oder es ist ein Ereignis aufgetreten, das nicht aufgetreten ist
darauf gehört zu werden. Letzteres tritt im Allgemeinen ein, wenn etwas passiert
Entfernt die Inotify-Überwachung zwangsweise, z. B. wenn eine überwachte Datei gelöscht wird oder die
Dateisystem, das eine überwachte Datei enthält, die nicht gemountet wird.

2 Das -t Die Option wurde verwendet und im angegebenen Intervall von ist kein Ereignis aufgetreten
Zeit.

Events


Die folgenden Ereignisse gelten für die Verwendung mit dem -e Option:

Zugang Aus einer überwachten Datei oder einer Datei in einem überwachten Verzeichnis wurde gelesen.

ändern In eine überwachte Datei oder eine Datei innerhalb eines überwachten Verzeichnisses wurde geschrieben.

attrib Die Metadaten einer überwachten Datei oder einer Datei in einem überwachten Verzeichnis wurden geändert.
Dazu gehören Zeitstempel, Dateiberechtigungen, erweiterte Attribute usw.

close_write
Eine überwachte Datei oder eine Datei in einem überwachten Verzeichnis wurde nach dem Öffnen geschlossen
im beschreibbaren Modus. Dies bedeutet nicht unbedingt, dass in die Datei geschrieben wurde.

close_nowrite
Eine überwachte Datei oder eine Datei in einem überwachten Verzeichnis wurde nach dem Öffnen geschlossen
im schreibgeschützten Modus.

schließen Eine überwachte Datei oder eine Datei in einem überwachten Verzeichnis wurde geschlossen, unabhängig davon, wie
Es war geöffnet. Beachten Sie, dass dies tatsächlich einfach durch das Abhören auf beide implementiert wird
close_write und close_nowrite, Daher werden alle empfangenen Abschlussereignisse als ausgegeben
eines davon, nicht NAH DRAN.

XNUMXh geöffnet Eine überwachte Datei oder eine Datei in einem überwachten Verzeichnis wurde geöffnet.

umgezogen nach
Eine Datei oder ein Verzeichnis wurde in ein überwachtes Verzeichnis verschoben. Dieses Ereignis tritt auch dann ein, wenn
Die Datei wird einfach von und in dasselbe Verzeichnis verschoben.

zugezogen von
Eine Datei oder ein Verzeichnis wurde aus einem überwachten Verzeichnis verschoben. Dieses Ereignis tritt auch dann ein, wenn
Die Datei wird einfach von und in dasselbe Verzeichnis verschoben.

schlauer bewegen Eine Datei oder ein Verzeichnis wurde von oder in ein überwachtes Verzeichnis verschoben. Beachten Sie, dass dies der Fall ist
tatsächlich umgesetzt, indem man einfach auf beides hört umgezogen nach und zugezogen von, daher
Alle empfangenen Abschlussereignisse werden als eines oder beide davon ausgegeben, nicht BEWEGUNG.

move_self
Eine überwachte Datei oder ein überwachtes Verzeichnis wurde verschoben. Nach diesem Ereignis ist die Datei oder das Verzeichnis
nicht mehr beobachtet.

erstellen Eine Datei oder ein Verzeichnis wurde in einem überwachten Verzeichnis erstellt.

löschen Eine Datei oder ein Verzeichnis innerhalb eines überwachten Verzeichnisses wurde gelöscht.

delete_self
Eine überwachte Datei oder ein überwachtes Verzeichnis wurde gelöscht. Nach diesem Ereignis ist die Datei oder das Verzeichnis
nicht mehr beobachtet. Beachten Sie, dass dieses Ereignis auch dann auftreten kann, wenn dies nicht der Fall ist
explizit zugehört wird.

unmounten
Das Dateisystem, in dem sich eine überwachte Datei oder ein überwachtes Verzeichnis befindet, wurde ausgehängt. Nach
Bei diesem Ereignis wird die Datei oder das Verzeichnis nicht mehr überwacht. Beachten Sie, dass dieses Ereignis
kann auch dann auftreten, wenn nicht explizit darauf zugehört wird.

Beispiele:


Beispiel 1
Führen Sie inotifywait in der Befehlszeile aus, um darauf zu warten, dass sich eine Datei im Verzeichnis „test“ befindet
zugegriffen. Nach dem Ausführen von inotifywait wird „cat test/foo“ in einer separaten Konsole ausgeführt.

% inotifywait-Test
Uhren aufstellen.
Uhren etabliert.
test/ ACCESS foo

Beispiel 2
Ein kurzes Shell-Skript, um effizient auf httpd-bezogene Protokollmeldungen zu warten und etwas zu unternehmen
angemessen.

#!/ Bin / sh
while inotifywait -e changes /var/log/messages; Tun
if tail -n1 /var/log/messages | grep httpd; Dann
kdialog --msgbox „Apache braucht Liebe!“
fi
erledigt

Beispiel 3
Zum Ansehen wird ein benutzerdefiniertes Ausgabeformat verwendet~/Test'. Währenddessen läuft jemand „Touch“.
~/test/badfile; berühren ~/test/goodfile; rm ~/test/badfile' in einer anderen Konsole.

% inotifywait -m -r --format '%:e %f' ~/Test
Uhren aufstellen. Achtung: Da -r angegeben wurde, kann dies eine Weile dauern!
Uhren etabliert.
Fehlerdatei erstellen
ÖFFNEN Sie die fehlerhafte Datei
ATTRIB fehlerhafte Datei
CLOSE_WRITE:Schlechte Datei schließen
Erstellen Sie eine gute Datei
Goodfile ÖFFNEN
ATTRIB goodfile
CLOSE_WRITE: CLOSE goodfile
Fehlerhafte Datei LÖSCHEN

VORSICHTEN


Bei Verwendung von inotifywait kann nicht garantiert werden, dass der ausgegebene Dateiname aktuell ist
nach einem Umzug, da es sich um den Inode handelt, der überwacht wird. Darüber hinaus ist keines davon
Es ist garantiert, dass die beobachteten Vorgänge für den Dateinamen ausgeführt wurden, der inotifywait lautete
wird angewiesen, zu überwachen, ob die Datei im Dateisystem unter mehreren Namen bekannt ist.

Verwenden Sie inotifywait online über die Dienste von onworks.net


Kostenlose Server & Workstations

Laden Sie Windows- und Linux-Apps herunter

Linux-Befehle

Ad