Finden Sie (UNIX)
Originalautor (en) | Dick Haight |
---|---|
Entwickler (en) | AT & T Bell Laboratories |
Betriebssystem | Unix, Unix-artig, Ibm i |
Plattform | Plattformübergreifend |
Typ | Befehl |
Lizenz | Finden Sie: GPLV3+ |
Im Unix-artig und andere andere Betriebssysteme, finden
ist ein Befehlszeilen-Dienstprogramm Das lokalisiert Dateien basierend auf einigen Benutzer-Specified Kriterien und druckt entweder den Pfadnamen jedes übereinstimmten Objekts oder führt diese Aktion auf jedem übereinstimmenden Objekt aus.
Es führt eine Suche von einem gewünschten Startort aus und durchquert dann rekursiv die Knoten (Verzeichnisse) einer hierarchischen Struktur (typischerweise a Baum). finden Kann verschiedene Dateisysteme von Partitionen durchqueren und durchsuchen, die zu einem oder mehreren Speichergeräten gehören, die unter dem Startverzeichnis montiert sind.[1]
Die möglichen Suchkriterien enthalten a Muster gegen die übereinstimmen Dateiname oder einen Zeitbereich, der mit der Änderungszeit oder der Zugriffszeit der Datei übereinstimmt. Standardmäßig, finden
Gibt eine Liste aller Dateien unter dem aktuellen zurück ArbeitsverzeichnisObwohl Benutzer die Suche auf eine beliebige maximale Anzahl von Ebenen im Startverzeichnis beschränken können.
Die verwandten Lokalisieren
Programme verwenden eine Datenbank mit indizierten Dateien, die über erhalten wurden über finden
(in regelmäßigen Abständen aktualisiert, normalerweise von Cron
Job) eine schnellere Methode zur Durchsuchung des gesamten Dateisystems nach Dateien mit Namen bereitzustellen.
Geschichte
finden
erschien in Version 5 Unix Im Rahmen des Programmer's Workbench Projekt und wurde neben Dick Haight neben CPIO,[2] die für gemeinsam verwendet werden.[3]
Das GNU finden
Die Implementierung wurde ursprünglich von Eric Decker geschrieben. Es wurde später von David Mackenzie, Jay Plett und Tim Wood verbessert.[4]
Das finden Der Befehl wurde auch auf die portiert Ibm i Betriebssystem.[5]
Syntax finden
$ finden [-H|-L] Weg... [Operand_expression ...]
Die beiden Optionen steuern, wie die finden
Befehl sollte symbolische Links behandeln. Das Standardverhalten besteht darin, symbolische Links niemals zu folgen. Das -L
Die Flagge wird die verursachen finden
Befehl, symbolische Links zu folgen. Das -H
Flag folgt nur symbolische Links, während die Befehlszeilenargumente verarbeitet werden. Diese Flags sind im POSIX -Standard für angegeben finden
.[6] Eine gemeinsame Erweiterung ist die -P
Flagge, zum explizit Deaktivieren von Symlink folgen.[7]
Mindestens ein Weg muss dem Ausdruck vorausgehen. finden
kann interpretieren Wildcards intern und Befehle müssen sorgfältig angegeben werden, um zu kontrollieren Muschelkugel.
Ausdruckselemente werden durch die getrennt Befehlszeilenargument Grenze, normalerweise als Whitespace in Shellsyntax dargestellt. Sie werden von links nach rechts bewertet. Sie können logische Elemente wie und (-and oder -a) und (-or -o) sowie Prädikate (Filter und Handlungen) enthalten.
GNU finden
hat eine große Anzahl zusätzlicher Funktionen, die von POSIX nicht angegeben sind.
Prädikate
Zu den häufig verwendeten Vorwahlen gehören:
-
-name Muster
: Tests, ob der Dateiname dem angegebenen Shell-Glob-Muster übereinstimmt. -
-Typtyp
: Tests, ob die Datei ein bestimmter Typ ist. UNIX -Dateitypen Akzeptiert gehören:-
b
: Blockgerät (gepuffert); -
c
: Charaktervorrichtung (ungeland); -
d
: Verzeichnis; -
f
: Regelmäßige Datei; -
l
: symbolischer Link; -
p
: benannte Pfeife; -
s
: Steckdose; -
D
: Tür.
-
-
-drucken
: Rücktracht immer wahr; druckt den Namen der aktuellen Datei sowie eine neue Zeile in die Stdout. -
-print0
: Rücktracht immer wahr; druckt den Namen der aktuellen Datei sowie ein Nullzeichen in die Stdout. Nicht von POSIX verlangt. -
-exec Programm [Argument ...];
: Rücktracht immer wahr; Führen Sie ein Programm mit den festgelegten Argumenten und dem aktuellen Pfad der Datei aus. -
-exec Programm [Argument ...] {} +
: Rücktracht immer wahr; Führen Sie ein Programm mit den festgelegten Argumenten und so vielen Pfaden wie möglich aus (bis zur maximalen Befehlszeilengröße, wie Xargs). Für die meisten Implementierungen bedeuten zusätzliche Vorkommen von {} zusätzliche Kopien des angegebenen Namens (Merkmal nicht von POSIX erforderlich).[7] -
-OK Programm [Argument ...];
: wie-exec
, aber zurück zurückgegeben oder falsch, je nachdem, ob das Programm 0 zurückgibt.
Wenn der Ausdruck keine von verwendet -print0
, -drucken
, -exec
, oder -OK
Finden Sie Standardeinstellungen für die Ausführung -drucken
Wenn die Bedingungen als wahr testen.
Betreiber
Operatoren können verwendet werden, um die Ausdrücke des Befehls zu verbessern. Die Betreiber sind in der Reihenfolge abnehmender Vorrang aufgeführt:
-
(Expr.)
: Kräfte Vorrang; -
! Expr
: wahr, wenn expr falsch falsch ist; -
expr1 expr2
(oderexpr1 -a expr2
: UND.expr2
wird nicht bewertet, wennexpr1
ist falsch; -
expr1 -o expr2
: ODER. expr2 wird nicht bewertet, wennexpr1
ist wahr.
$ finden . -Name 'Datei A_*' -O -name 'FileB_*'
Dieser Befehl sucht den aktuellen Baumverzeichnisbaum nach Dateien, deren Namen mit beginnen fileA_
oder fileB_
. Wir zitieren die fileA_*
so dass die Schale sie nicht erweitert.
$ finden . -Name 'foo.cpp' '!' -Weg '.svn'
Dieser Befehl durchsucht den aktuellen Baumverzeichnisbaum mit Ausnahme des Subdirectory -Baums ".svn" für Dateien, deren Name "foo.cpp" lautet. Wir zitieren die !
so dass es nicht von der Hülle als der Ersatzcharakter der Geschichte interpretiert wird.
POSIX -Schutz vor unendlicher Leistung
Dateisysteme in realer Welt enthalten häufig geschaltete Strukturen, die durch die Verwendung von erstellt wurden schwer oder weiche Links. Das POSIX -Standard benötigt das
Das
finden
Der Versorgungsunternehmen erfasst unendliche Schleifen; Das heißt, in ein zuvor besuchter Verzeichnis einzugeben, das ein Vorfahr der letzten Datei ist, die aufgenommen wurde. Wenn es eine unendliche Schleife erkennt,finden
schreibt eine diagnostische Nachricht in Standardfehler und soll entweder ihre Position in der Hierarchie wiederherstellen oder enden.
Beispiele
Aus dem aktuellen Arbeitsverzeichnis
$ finden . -Name 'mein*'
Dadurch sucht der aktuelle Baumverzeichnisbaum nach Dateien, deren Namen mit beginnen mein. Die einzelnen Zitate vermeiden die Hülse Erweiterung - ohne sie würde die Hülle ersetzen mein* mit der Liste der Dateien, deren Namen mit beginnen mit mein im aktuellen Arbeitsverzeichnis. In neueren Versionen des Programms kann das Verzeichnis weggelassen werden, und es wird das aktuelle Arbeitsverzeichnis implizieren.
Nur reguläre Dateien
$ finden . -Name 'mein*' -Typ f
Dies begrenzt die Ergebnisse der obigen Suche nur auf reguläre Dateien, wodurch Verzeichnisse, spezielle Dateien, symbolische Links usw. ausgeschlossen werden. mein* ist in einzelnen Zitate (Apostrophes) eingeschlossen, da die Shell sie sonst durch die Liste der Dateien im aktuellen Arbeitsverzeichnis ersetzt mein…
Befehle
Die vorherigen Beispiele haben Ergebnisse von Ergebnissen erstellt, da standardmäßig standardmäßig finden
führt die aus -drucken
Aktion. (Beachten Sie, dass frühe Versionen der finden
Der Befehl hatte überhaupt keine Standardaktion; Daher würde die resultierende Liste der Dateien für die Verwirrung der Benutzer verworfen.)
$ finden . -Name 'mein*' -Type f -ls
Dies druckt erweiterte Dateiinformationen.
Suchen Sie alle Verzeichnisse
$ Finden Sie / -name myfile -Typ f -Druck
Dies sucht jedes Verzeichnis nach einer regulären Datei, deren Name ist meine Datei und druckt es auf den Bildschirm. Es ist im Allgemeinen keine gute Idee, auf diese Weise nach Dateien zu suchen. Dies kann viel Zeit in Anspruch nehmen, daher ist es am besten, das Verzeichnis genauer anzugeben. Einige Betriebssysteme können dynamische Dateisysteme montieren, die nicht kongenial sind finden
. Komplexere Dateinamen einschließlich Zeichen, die für die Shell speziell sind, müssen möglicherweise in einzelnen Zitaten eingeschlossen sein.
Suchen Sie alle bis auf einen Unterverzeichnisbaum
$ FIND / -PATH EXKLUDED_PATH -PRUNE -O -O -Typ f -name myFile -print
Dies sucht in jedem Verzeichnis mit Ausnahme des Subverdichterbaums ausgeschlossen_Path (Voller Weg einschließlich der führenden /), die von der beschnitten werden -Pflaume
Aktion für eine reguläre Datei, deren Name ist meine Datei.
Geben Sie ein Verzeichnis an
$ Finden /Zuhause /Weoly -name myfile -Typ f -Druck
Dies sucht die /home/Weoly Verzeichnisbaum für reguläre Dateien benannt meine Datei. Sie sollten das Verzeichnis immer auf die tiefste Ebene angeben, an die Sie sich erinnern können.
Suchen Sie mehrere Verzeichnisse
$ finden lokal /tmp -name mydir -Typ d -print
Dies sucht die lokal Unterverzeichnisbaum des aktuellen Arbeitsverzeichnisses und des /tmp Verzeichnisbaum für genannte Verzeichnisse Mydir.
Fehler ignorieren
Wenn Sie dies als Benutzer als Benutzer als Root tun, möchten Sie möglicherweise die Erlaubnis abgelehnt (und andere) Fehler ignorieren. Da werden Fehler gedruckt zu StderrSie können unterdrückt werden, indem die Ausgabe in /dev /null umgeleitet wird. Das folgende Beispiel zeigt, wie dies in der Bash -Shell geht:
$ Finden Sie / -name myfile -Typ f -Druck 2> /dev /null
Wenn du eine ... bist CSH oder TCSH Benutzer können nicht umleiten Stderr ohne umzuleiten Stdout auch. Sie können SH verwenden, um die auszuführen finden
Befehl, dies umzugehen:
$ Sh -C "Finden Sie /-name myfile -typ f -print 2> /dev /null"
Eine alternative Methode bei der Verwendung CSH oder TCSH ist die Ausgabe von zu übergeben Stdout und Stderr in ein Grep Befehl. Dieses Beispiel zeigt, wie man Linien unterdrückt, die eine Erlaubnis verweigerten, Fehler abgelehnt.
$ finden . -name myfile | & grep -v 'Erlaubnis verweigert'
Finden Sie einen von unterschiedlich benannten Dateien
$ finden . \ ( -Name '*jsp' -O -name '*Java' \) -Type f -ls
Das -ls
Der Bediener druckt erweiterte Informationen, und das Beispiel findet eine reguläre Datei, deren Name entweder mit 'JSP' oder 'Java' endet. Beachten Sie, dass die Klammern erforderlich sind. In vielen Muscheln müssen die Klammern mit einem Backslash entkommen (Backslash (\ (
und \)
) um zu verhindern, dass sie als spezielle Shell -Zeichen interpretiert werden. Das -ls
Der Betreiber ist in allen Versionen von nicht verfügbar finden
.
Eine Aktion ausführen
$ Finden Sie/var/ftp/mp3 -name '*.mp3' -Typ f -exec chmod 644 {} \;
Dieser Befehl ändert die Berechtigungen von allen regulären Dateien, deren Namen mit enden mit .mp3 im Verzeichnisbaum /var/ftp/mp3. Die Aktion wird durch Angabe der Erklärung durchgeführt -exec chmod 644 {} \;
im Befehl. Für jede reguläre Datei, deren Name in endet in .mp3
, der Befehl CHMOD 644 {}
wird ersetzt {}
mit dem Namen der Datei. Das Semikolon (Backslash, um die Shell zu vermeiden, die sie als Befehlsabscheider interpretiert) zeigt das Ende des Befehls an. Genehmigung 644
, normalerweise als gezeigt als rw-r-r--
, gibt dem Dateibesitzer die vollständige Erlaubnis zum Lesen und Schreiben der Datei, während andere Benutzer nur schreibgeschriebenen Zugriff haben. In einigen Muscheln die {}
muss zitiert werden. Das Nachlauf ";
"wird üblicherweise mit einem führenden" zitiert "\
", könnte aber genauso effektiv in einzelnen Zitate eingeschlossen werden.
Beachten Sie, dass der Befehl selbst sollte nicht zitiert werden; Andernfalls erhalten Sie Fehlermeldungen wie
finden: Echo "mv ./3bfn rel071204": Datei oder Verzeichnis existiert nicht
was bedeutet, dass finden
versucht, eine Datei mit dem Namen 'auszuführen'echo "mv ./3bfn rel071204"
'und scheitern.
Wenn Sie viele Ergebnisse ausführen, ist es effizienter, eine Variante des EXEC -Primärs zu verwenden, die Dateinamen sammelt bis zu bis zu Arg_max und führt dann den Befehl mit einer Liste von Dateinamen aus.
$ finden . -exec Befehl {} +
Dadurch wird sichergestellt COMMAND
ohne von der Hülle getrennt zu werden.
Dateien und Verzeichnisse löschen
Das -löschen
Aktion ist eine GNU -Erweiterung, und die Verwendung wird eingeschaltet -Tiefe
. Wenn Sie also einen Befehl Fund mit testen -drucken
Anstatt von -löschen
Um herauszufinden, was passieren wird, bevor Sie es tun, müssen Sie verwenden -Tepth -print
.
Löschen Sie leere Dateien und drucken Sie die Namen (Beachten Sie das -leer
ist eine eindeutige Erweiterung von GNU finden
Das ist möglicherweise nicht in allen verfügbar finden
Implementierungen):
$ finden . -Empty -delete -print
Leere reguläre Dateien löschen:
$ finden . -typ f -Ebelpty -delete
Leere Verzeichnisse löschen:
$ finden . -typ d -Empty -delete
Löschen Sie leere Dateien mit dem Namen "Bad":
$ finden . -name bad -Ebelpty -delete
Warnung. - Das -löschen
Aktion sollte unter Bedingungen wie z. -leer
oder -Name
:
$ finden . -löschen # Dies löscht alles in.
Suche nach einer Zeichenfolge
In diesem Befehl werden alle Dateien aus dem Baum /TMP -Verzeichnis für eine Zeichenfolge durchsucht:
$ Find /tmp -Typ f -exec grep 'Suchbegriff' /dev/null '{}' \+
Das /dev/null
Das Argument wird verwendet, um den Namen der Datei vor dem gefundenen Text anzuzeigen. Ohne ihn wird nur der gefundene Text gedruckt. (Alternativ unterstützen einige Versionen von Grep a -H Fahnen Sie, der den Dateinamen zum Drucken erzwingt.) GNU Grep
kann alleine verwendet werden, um diese Aufgabe auszuführen:
$ grep -r 'Suchbegriff' /tmp
Beispiel für die Suche nach "Protokoll" in Jsmiths Heimverzeichnisbaum:
$ Finden Sie ~ Jsmith -exec Grep -Protokoll '{}' /dev/null \; -drucken/home/jsmith/scripts/errpt.sh:cp $ log $ fixedLogname /home/jsmith/scripts/errpt.sh:cat $ log /home/jsmith/scripts/title: user = $ logName
Beispiel für die Suche nach dem Zeichenfolge "Fehler" in allen XML -Dateien im aktuellen Baumverzeichnisbaum:
$ finden . -Name "*.xml" -exec grep "ERROR" /dev/null '{}' \+
Die doppelten Zitate (""), die die Suchzeichenfolge und einzelne Zitate ('') um die Klammern umgeben, sind in diesem Beispiel optional, benötigen jedoch, um Leerzeichen und einige andere Sonderzeichen in der Zeichenfolge zu ermöglichen. Beachten Sie mit komplexeren Text (insbesondere in den meisten beliebten Shells, die von "sh" und `csh`) einzelne Zitate stammen Doppelzitate verhindern nicht jede besondere Interpretation. Das Zitieren von Dateinamen mit englischen Kontraktionen zeigt, wie dies ziemlich kompliziert werden kann, da eine Zeichenfolge mit einem Apostroph darin einfacher ist, mit doppelten Zitaten zu schützen:
$ finden . -Name "Dateihaltiges-nicht"-nicht " -exec grep "kippen" '{}' \; -drucken
Suchen Sie nach allen Dateien, die einem Benutzer gehören
$ finden . -User <userId>
Suchen Sie im Fall unempfindlicher Modus
Beachten Sie, dass -Iname
ist nicht im Standard und kann nicht von allen Implementierungen unterstützt werden.
$ finden . -Iname 'Meine Datei*'
Wenn die -Iname
Switch wird nicht in Ihrem System unterstützt, dann können Problemumgehungen möglich sein, wie:
$ finden . -Name '[mm] [yy] [ff] [ii] [ll] [ee]*'
Dies verwendet Perl Um den obigen Befehl für Sie zu erstellen (im Allgemeinen ist diese Art von Nutzung gefährlich, da Sonderzeichen nicht ordnungsgemäß zitiert werden, bevor sie in die Standardeingabe von `sh` eingespeist werden):
$ Echo 'Meine Datei*' | Perl -Pe 's/([a-za-z])/[\ l \ 1 \ u \ 1]/g; s /(.*)/ Finden Sie. -name \ 1/' | Sch
Suchen Sie Dateien nach Größe
Suchen Sie Dateien, deren Größe zwischen 100 Kilobyten und 500 Kilobyten liegt:
$ finden . -Size +100k -a -size -500k
Durchsuchen leerer Dateien:
$ finden . -Size 0k
Suchen Sie nicht leere Dateien:
$ finden . ! -Size 0k
Suchen Sie Dateien nach Namen und Größe
$ Finden Sie /usr /src! \ ( -Name '*, v' -O -name '.*, v' \) '{}' \; -drucken
In diesem Befehl wird der Verzeichnisbaum /usr /src durchsucht. Alle Dateien, die aus dem Formular '*, V' und '.*, V' ausgestattet sind, sind ausgeschlossen. Wichtige Argumente zu beachten sind in der Tooltip Das wird auf Maus-Over angezeigt.
zum Datei in `Finden /opt \ ( -name ERROR_LOG -O -NAME 'Access_log' -O -name 'SSL_Engine_log' ' -O -name 'Rewrite_log' -O -name 'Catalina.out' \) -Size +300000k -a -Größe -5000000k`; tun kat /dev /null> $ Datei erledigt
Die Einheiten sollten einer von [Bckw], 'B' bedeutet 512-Byte-Blöcke, 'C' bedeutet Byte, 'K' bedeutet Kilobytes und 'W' bedeutet 2-Byte-Wörter. Die Größe zählt keine indirekten Blöcke, zählt jedoch Blöcke in spärlichen Dateien, die nicht tatsächlich zugewiesen werden.
Dateien nach Zeit suchen
-
-mtime
: Änderungszeit -
-ctime
: Inode -Änderungszeit -
-atime
: Zugriffszeit
Dateien haben vor Tagen eine relative Anzahl von Tagen geändert:
- +[Zahl] = mindestens so viele Tage.
- -[Zahl] = vor so vielen Tagen.
- [Zahl] = Genau so viele Tage.
- Optional hinzufügen
-Daystart
Zeit von Anfang an einen Tag (0 Uhr) und nicht von den letzten 24 Stunden.
Beispiel, um alle Textdateien im Dokumentordner zu finden, das seit einer Woche geändert wurde (siehe 7 Tage):
$ Finden Sie ~/ dokumente/ -Iname "*.txt" -Mtime -7
Dateien, die vor oder nach einem absoluten Datum und einer absoluten Uhrzeit geändert wurden:
-
-Newermt yyyy-mm-dd
: Zuletzt geändert nach dem Datum -
-not -Newermt yyyy-mm-dd
: Zuletzt vor Datum geändert
Beispiel, um alle Textdateien zu finden, die zuletzt im Februar 2017 bearbeitet wurden:
$ Finden Sie ~/ dokumente/ -Iname "*.txt" -Newermt 2017-02-01 -not -NewerMt 2017-03-01
-
-Newers [Datei]
: In jüngerer Zeit geändert als angegebene Datei.-
-Cnewer
: Gleiches gilt für Inode -Änderungszeit. -
-Anewer
: Gleiches gilt für die Zugriffszeit. - Auch vorbereitet mit
-nicht
für inverse Ergebnisse oder Reichweite.
-
Listen Sie alle kürzlich bearbeiteten Textdateien auf als "document.txt":
$ Finden Sie ~/ dokumente/ -Iname "*.txt" -Newer document.txt
Verwandte Versorgungsunternehmen
-
Lokalisieren
ist ein Unix -Suchwerkzeug, das eine vorgebaute Datenbank mit Dateien anstelle von Verzeichnisbäumen eines Dateisystems durchsucht. Das ist schneller alsfinden
Aber weniger genau, da die Datenbank möglicherweise nicht auf dem neuesten Stand ist. -
Grep
ist ein Befehlszeilen-Dienstprogramm zum Durchsuchen von Datensätzen mit Klartext für Zeilen, die einem regulären Ausdruck entsprechen, und standardmäßig Berichterstattungspassungszeilen auf Standardausgabe. -
Baum
ist ein Befehlszeilen-Dienstprogramm, das rekursiv Dateien auflistet, die in einem Verzeichnisbaum gefunden wurden und die Dateinamen gemäß ihrer Position in der Dateihierarchie einbeziehen. - GNU finden Dienstprogramme (auch als Findutils bekannt) ist a GNU -Paket die Implementierungen der Tools enthält
finden
undXargs
. - Busybox ist ein Dienstprogramm, das mehrere abgespeckte Unix-Tools in einer einzigen ausführbaren Datei bietet, die für eingebettete Betriebssysteme mit sehr begrenzten Ressourcen vorgesehen sind. Es bietet auch eine Version von
finden
. -
Dir
Hat die Option /s, die rekursiv nach Dateien oder Verzeichnissen sucht. - Plan 9 von Bell Labs verwendet zwei Dienstprogramme zum Ersetzen
find
: awalk
Das geht nur durch den Baum und druckt die Namen und asor
Das filtert nur (wie Grep), indem es Ausdrücke in Form eines Shell -Skripts bewertet. Willkürliche Filter können über Rohre verwendet werden. Die Befehle sind nicht Teil von Plan 9 aus dem BenutzerraumSo verfügt Benjamin Barenblat von Google über eine portierte Version zu POSIX -Systemen über GitHub.[8] -
fd
ist eine einfache Alternative zufind
geschrieben in der Rost -Programmiersprache.[9]
Siehe auch
- mdfind, ein ähnliches Dienstprogramm, das Metadaten verwendet Mac OS und Darwin
- Liste der UNIX -Befehle
- Liste der DOS -Befehle
- Filter (Funktion höherer Ordnung)
- Finden (Windows), ein DOS- und Windows -Befehl, der sich sehr von Unix unterscheidet
finden
- vorliegt, ein Windows -Befehl, der Dateien nach Attribut findet, ähnlich wie bei UNIX
finden
- Grep, ein Unix -Befehl, der Text findet, das einem Muster entspricht, ähnlich wie Windows
finden
Verweise
- ^ "Finden Sie (1) - Linux Manual Page". Man7.org. Abgerufen 2019-11-19.
- ^ McIlroy, M. D. (1987). A Research Unix Reader: Annotierte Auszüge aus dem Programmierhandbuch, 1971–1986 (PDF) (Technischer Bericht). Cstr. Bell Labs. 139.
- ^ "libarchive/libarchive". GitHub. Abgerufen 2015-10-04.
- ^ Dateien finden
- ^ IBM. "IBM System I Version 7.2 Programmierung Qshell" (PDF). Abgerufen 2020-09-05.
- ^ Die einzelne Unix -Spezifikation, Version 4 von Die offene Gruppe : Finden Sie Dateien - Shell and Utilities Referenz,
- ^ a b Freebsd Allgemeine Befehle Handbuch - -
- ^ "Google / Walk: Plan 9 -Style -Dienstprogramme zum Ersetzen von Find (1)". GitHub. Abgerufen 30. März 2020.
- ^ Peter, David (30. März 2020). "SharkDP/FD: Eine einfache, schnelle und benutzerfreundliche Alternative zu" Finden "". GitHub.