
Ich muss herausfinden, wo sich große Dateien auf dem Linux-Server befinden und wo viele Leute große Dateien verarbeiten und Daten geladen werden. Der Befehl „find“ braucht länger, um die Ausgabe zu liefern. Gibt es eine andere Möglichkeit, das Ergebnis meines Befehls zu beschleunigen, als meinen Suchpfad zu vereinfachen?
Antwort1
Sie können verwenden dnotify
. Sie haben nicht genau angegeben, was Sie tun möchten, daher kann ich nicht genauer darauf eingehen, aber ich möchte anmerken, dass diednotify Man-SeiteZustände:
dnotify - Führt einen Befehl aus, wenn sich der Inhalt eines Verzeichnisses ändert
Beispielsweise dieser Befehl
dnotify -CD -r /home/my_name -e echo change to {}
druckt „ändern in “ und dann den Namen der geänderten Datei, jedes Mal, wenn eine Datei in /home/my_name oder einem seiner Unterverzeichnisse erstellt oder gelöscht wird.
Sie können dies mit einer zuvor erstellten Liste vorhandener Dateien koppeln, um eine vollständig aktuelle Liste der zu lesenden Dateien zu führen, anstatt „find“ auszuführen.
Antwort2
VerwendenApache Lucene 4.6.0oderownCloud Server 5.
Apache Solr 4.6.0 für die schnelle Volltextsuche in persönlichen Daten.
Alternative zur Freeware-Plattform für Microsoft Windows:SharePoint 2013 Foundation.
Antwort3
1) Mann lokalisieren.
2) Wenn Sie relativ wenige oder nicht wirklich wichtige Änderungen haben: Erstellen Sie einen Cache aus Ihrer Verzeichnishierarchie mit einem find -type f intoa-Datei. Einmal. Später können Sie in dieser Datei greppen, was viel schneller geht.