IT-Academy Logo
Sign Up Login Help
Home - Betriebssysteme - Linux - Anwendungssoftware - Das Kommando find



Das Kommando find

Das find kommando zum suchen von datein wird ueberblicksmaessig vorgestellt.


Autor: Franz Schaefer (mond)
Datum: 23-01-2002, 19:31:52
Referenzen: man find
Schwierigkeit: Anfänger
Ansichten: 3911x
Rating: 6 (1x bewertet)

Hinweis:

Für den hier dargestellte Inhalt ist nicht der Betreiber der Plattform, sondern der jeweilige Autor verantwortlich.
Falls Sie Missbrauch vermuten, bitten wir Sie, uns unter missbrauch@it-academy.cc zu kontaktieren.

[Druckansicht] [Als E-Mail senden] [Kommentar verfassen]



Übersicht

find. find ist so aehnlich wie locate. locate kennen wir ja schon. find
ist viel leistungsfaehiger und sucht "live" (d.h. nicht in einer
naechtlich erstellten liste sondern direkt im verzeichnissbaum.) find ist
daher langsamer.

ich beschreibe hier wieder das GNU find programm. komerzielle find habe
ueblicherweise nicht ganz alle funktionen die hier aufgezaehlt sind.

find /verzeichnisname

listet alle datein und verzeichnissnamen unterhalb von /verzeichnissname.
wenn du z.b.

find .

in deinem homeverzeichniss eingibst findest du alle datein und
verzeichnisse unterhalb deines aktuellen (in disem falle ist das dann das
homeverzeichniss) verzeichnisses.

find /etc

finded alle datein und verzeichnisse unterhalb von /etc

etc..

ueblicherweise will man aber nicht "alles" finden sondern will die suche
einschraenken. find bietet dazu sehr viele moeglichkeiten. man kann mehrere
kriterien angeben wie man die suche einschraenken will. diese werden alle
"und-verknueft" d.h. sie muessen alle erfuellt sein (man kann sie auch oder
verknuepfen das braucht man aber eher selten..)

z.b.:

find . -name \*.txt

sucht alle files die auf .txt aenden. ( das \ vor dem stern ist notwendig um
der shell zu sagen dass sie den * nicht besonders behandeln soll und das
suchmusster einfach an find weiterzugeben.. andernfalls wuede die shell das
*.txt durch die namen aller textfiles im aktuellen verzeichniss ersetzten.
das ist normalerweise nciht was man will.. man will ja auch alle files mit
.txt in allen unterverzeichnissen finden et... )

find . -type f

findet nur files und keine verzeichnisse oder sonstige sonderdateien (type
f).

find . -type d

findet nur verzeichnisse (type d) und keine files. und jetzt eine
kombination:

find . -type d -name a\*

wuerde alle verzeichnisse finden deren namen mit a beginnt.

es gibt etwa 40 kriterien nach denen man files auswaehlen kann. hier nur die
wichtigsten optionen:



paedubucher
Professonial
Beitrag vom:
06-11-2006, 23:21:11

Geschwindigkeit

Wiso geht denn der ganze Suchvorgang so blitzschnell?

Wenn man auf Windows eine Datei suchen möchte, dann wird mal 10 Minuten gerattert bis da was raus kommt. Und meistens kommt ja doch nichts raus, da ein Trojaner die Datei gelöscht hat :D

Auf einem Linux-System kann ich z.B. den Suchvorgang "find -name \*.java" starten. Er findet dort x-Tausend Dateien, der Vorgang ist aber nach 5 Sekunden abgeschlossen.

-----------------------------------------------------


[back to top]



Userdaten
User nicht eingeloggt

Gesamtranking
Werbung
Datenbankstand
Autoren:04512
Artikel:00815
Glossar:04116
News:13565
Userbeiträge:16552
Queueeinträge:06248
News Umfrage
Ihre Anforderungen an ein Online-Zeiterfassungs-Produkt?
Mobile Nutzung möglich (Ipone, Android)
Externe API Schnittstelle/Plugins dritter
Zeiterfassung meiner Mitarbeiter
Exportieren in CSV/XLS
Siehe Kommentar



[Results] | [Archiv] Votes: 1158
Comments: 0