Wie man Platzhalter verwendet, um Dateinamen in Linux zuzuordnen

Entdecken Sie, wie Sie Wildcards in Linux nutzen, um effizient nach Dateien zu suchen und diese zu verwalten – für einfachere und schnellere Dateiverwaltung.
Das Finden von Dateien in Linux kann zunächst verwirrend erscheinen, aber keine Sorge, es wird einfacher, sobald Sie Wildcards verstehen. Wildcards sind spezielle Symbole, die Ihnen helfen, mehrere Dateien oder Ordner auszuwählen, ohne jeden Namen einzeln eingeben zu müssen. In diesem Artikel erklären wir, wie man Wildcards in Linux effektiv zur Übereinstimmung von Dateinamen verwendet.
1. Asterisk (*)
Der Asterisk (*) ist eine Linux-Wildcard, die null oder mehr Zeichen in Dateinamen oder Verzeichnisnamen übereinstimmt. Er hilft beim Suchen, Auflisten oder Bearbeiten mehrerer Dateien gleichzeitig. Er wird häufig mit Befehlen wie cp
, mv
und rm
für Massenvorgänge verwendet.
Übereinstimmung von Dateien nach Erweiterung
Wir können den Befehl ls *.txt
ausführen, um alle Dateinamen aufzulisten, die mit .txt enden:
Übereinstimmung von Dateien nach Präfix
Wenn Sie Dateien auflisten müssen, die mit einem bestimmten Wort beginnen, können Sie den Befehl ls example*
verwenden:
Übereinstimmung von Dateien nach Suffix
Um Dateien aufzulisten oder zu ändern, die mit einem bestimmten Muster wie „_1“ enden, verwenden Sie den Befehl ls *_
:
Übereinstimmung von Dateien, die ein bestimmtes Wort enthalten
Wir können Dateinamen, die eine bestimmte Teilzeichenfolge enthalten, mithilfe des Asterisk-Wildcards übereinstimmen. Beispielsweise listet der Befehl ls *ample*
alle Dateinamen auf, die die Teilzeichenfolge „ample“ enthalten:
Übereinstimmung von versteckten Dateien
In Linux beginnen versteckte Dateien mit einem Punkt. Wir können den Befehl ls .*
verwenden, um versteckte Dateien aufzulisten:
2. Fragezeichen (?)
Das Fragezeichen (?) Wildcard wird verwendet, um ein einzelnes Zeichen in einem Dateinamen übereinzustimmen. Es hilft, Dateien zu finden, deren Namen einem bestimmten Muster folgen, sich aber um ein Zeichen unterscheiden. Es wird häufig verwendet, um Dateien mit ähnlichen Namen zu finden oder zu verwalten, die sich nur durch ein einzelnes Zeichen unterscheiden. Zum Beispiel stimmt file?.txt
mit “file1.txt,” “fileA.txt,” “fileB.txt” usw. überein.
Übereinstimmung von Dateien mit einem beliebigen einzelnen Zeichen an einer bestimmten Stelle
Wir können das Fragezeichen (?) Wildcard verwenden, um Dateinamen zu übereinstimmen, bei denen an einer bestimmten Stelle jedes beliebige Zeichen stehen kann. Zum Beispiel stimmt der Befehl ls file?.txt
mit jedem Dateinamen überein, der mit file beginnt, gefolgt von einem beliebigen einzelnen Zeichen und mit der Endung .txt:
Übereinstimmung von Dateien mit einer festen Anzahl von Zeichen
Wir können das ? Wildcard mehrfach verwenden, um eine feste Anzahl von Zeichen in einem Dateinamen übereinstimmen. Zum Beispiel stimmt der Befehl ls example??.txt
mit jeder Datei überein, die mit einem Wort example beginnt, gefolgt von zwei beliebigen Zeichen und mit der Endung .txt:
Kombination von ? mit * Wildcard
Wir können das ? Wildcard mit * Wildcard kombinieren, um erweiterte Mustersuche durchzuführen. Zum Beispiel stimmt das Muster ?ile*
mit Dateinamen überein, bei denen das erste Zeichen beliebig sein kann, gefolgt von „ile“ und dann beliebig vielen Zeichen:
3. Klammerausdrücke ([ ])
In Klammern stehende Zeichen ([ ]) stimmen mit jedem Zeichen überein, das in den eckigen Klammern eingeschlossen ist. Sie können verschiedene Zeichentypen wie Buchstaben, Zahlen oder spezielle Symbole einschließen, um eine bestimmte Übereinstimmung festzulegen. Beispielsweise listet der Befehl ls [1ab]file.txt
alle Dateien auf, die mit 1, a oder b beginnen, gefolgt von „file.txt“:
4. Negation (!)
Wir können auch eine Gruppe von Zeichen mit dem !-Symbol negieren. Beispielsweise listet der Befehl ls file[!a-zA-Z]
alle Dateinamen auf, die mit file beginnen, gefolgt von einem beliebigen Zeichen, das kein Buchstabe (a-z oder A-Z) ist. Es stimmt mit „file1“, „file_“ oder „file@“ überein, aber nicht mit „fileA“ oder „filez“:
5. geschweifte Klammern ({ })
Geschweifte Klammern ({ }), auch als Bereichserweiterung bekannt, ermöglichen es uns, mehrere durch Kommas getrennte Muster anzugeben. Sie erweitern sich in bestimmte Dateinamen, anstatt als Wildcard zu agieren. Zum Beispiel ist der Befehl ls file{1,2,3}.txt
gleichbedeutend mit ls file1.txt file2.txt file3.txt
. Es listet alle diese spezifischen Dateien auf, wenn sie existieren:
6. Verwendung von Wildcards mit Linux-Befehlen
Wir können Wildcards mit verschiedenen Linux-Befehlen wie find, ls, cp und rm verwenden, um die Dateiverwaltung zu erleichtern, indem wir eine musterbasierte Auswahl ermöglichen. Beispielsweise verwenden wir den Befehl find Documents -name "*.txt"
, um alle .txt-Dateien im Dokumentenverzeichnis zu finden:
Ähnlich können wir Wildcards mit jedem anderen Linux-Befehl verwenden, um einen bestimmten Zweck zu erreichen.
7. Verwendung von Wildcards mit Groß- und Kleinschreibung
Wildcards in Linux sind Groß- und Kleinschreibung, was bedeutet, dass Dateinamen mit unterschiedlichen.
Groß- und Kleinschreibung werden als unterschiedlich behandelt. Um sowohl Groß- als auch Kleinbuchstabenvariationen zu matchen, können wir Zeichenklassen oder optionale Groß-/Kleinschreibung in Befehlen verwenden.
Zum Beispiel können wir den ls [fF]ile.txt
Befehl verwenden, um sowohl file.txt als auch File.txt zu erfassen:
Das ist es also! Jetzt wissen Sie, wie Sie Wildcards verwenden, um die Dateiverwaltung in Linux schneller und einfacher zu gestalten. Egal, ob Sie nach Dateien suchen, Verzeichnisse organisieren oder Aufgaben automatisieren, diese Wildcard-Techniken sparen Ihnen Zeit und Mühe.
Ich empfehle, mit * und ? zu beginnen, da sie am häufigsten verwendet werden. Experimentieren Sie dann mit Klammerausdrücken und geschweiften Klammern, um Ihre Suchen zu verfeinern. Sobald Sie sich sicher fühlen, erkunden Sie reguläre Ausdrücke für noch fortgeschrittenere Mustererkennung.
Häufig gestellte Fragen
Wie verwende ich Platzhalter in Linux?
In Linux ermöglichen Platzhalterzeichen (Wildcard-Zeichen) eine flexible Dateiauswahl und -verarbeitung. Hier sind die grundlegenden Verwendungsmöglichkeiten:
- -
Sternchen (*)
- : Steht für beliebig viele Zeichen, einschließlich keiner.
- Beispiel:
*.txt
findet alle Dateien mit der Endung .txt. - Fragezeichen (?): Steht für genau ein Zeichen.
- Beispiel:
file?.txt
findet Dateien wie file1.txt oder fileA.txt, jedoch nicht file10.txt. ### Verwendung in Befehlen - Auflisten von Dateien:
ls *.jpg
: Listet alle JPEG-Dateien im aktuellen Verzeichnis auf.- Kopieren von Dateien:
cp report-?.pdf /backup/
: Kopiert alle PDF-Dateien, die mit 'report-' beginnen und genau eine Zahl oder einen Buchstaben haben.- Löschen von Dateien:
rm old-*.log
: Entfernt alle Log-Dateien, die mit 'old-' beginnen.- Suchen nach Dateien:
find . -name '*.sh'
: Sucht im aktuellen Verzeichnis und seinen Unterverzeichnissen nach Shell-Skripten. ### Tipps- Kombinieren Sie Platzhalter für präzisere Abfragen:
- Beispiel:
data-??-2023.csv
findet Daten-Dateien mit genau zwei Zeichen zwischen 'data-' und '-2023.csv'. - Achten Sie auf die Groß- und Kleinschreibung, da sie je nach Dateisystem eine Rolle spielt. Mit diesen Platzhaltern können Sie effizienter arbeiten und gezielt die gewünschten Dateien in Linux finden oder bearbeiten.
Wie heißt der Befehl, um Dateien zu suchen in Linux?
Um Dateien in Linux zu suchen, verwenden Sie den Befehl find
. Hier sind einige grundlegende Beispiele, wie Sie ihn anwenden können:
- -
Suche im aktuellen Verzeichnis:
- bash find . -name 'dateiname.txt'
- Suche in einem bestimmten Verzeichnis: bash find /pfad/zum/verzeichnis -name 'dateiname.txt'
- Suche nach allen Dateien mit einer bestimmten Endung: bash find . -name '.txt'
- Suche nach Dateien, die älter als eine bestimmte Zeit sind: bash find . -type f -mtime +7
- Suche nach leeren Dateien:* bash find . -type f -empty Der
find
Befehl ist mächtig und flexibel und bietet zahlreiche Optionen zur Feinjustierung der Suche.
Was macht Cat Linux?
Cat Linux ist ein vielseitiger Befehl, der hauptsächlich zum Lesen und Kombinieren von Dateien verwendet wird. Hier sind die Hauptfunktionen:
- -
Dateien anzeigen
- : cat zeigt den Inhalt der angegebenen Datei(en) in der Standardausgabe (normalerweise das Terminal) an.
- Dateien zusammenführen: Mehrere Dateien können in einem Befehl zusammengefügt und die Inhalte in einer neuen Datei gespeichert werden.
- Standardeingabe: Wenn kein Dateiname angegeben ist, liest cat die Eingaben vom Benutzer über die Tastatur.
- Kombination mit anderen Befehlen: cat kann zusammen mit anderen Kommandos in der Pipeline verwendet werden, um Daten zu verarbeiten. Insgesamt ist cat ein unverzichtbares Werkzeug für die Dateiverwaltung und das Arbeiten mit Text in der Linux-Umgebung.
Welche Sonderzeichen sind in Linux Dateinamen erlaubt?
Erlaubte Zeichen In Linux-Dateinamen sind zahlreiche Sonderzeichen erlaubt. Hier sind die wichtigsten:
- - Buchstaben (a-z, A-Z)
- Ziffern (0-9)
- Bindestrich (-)
- Unterstrich (_)
- Punkt (.) Zusätzlich können folgende Sonderzeichen verwendet werden, jedoch mit Vorsicht:
- Tilde (~)
- Pluszeichen (+)
- Ausrufezeichen (!)
- Dollarzeichen ($)
- Und-Zeichen (&)
- Gleichheitszeichen (=)
- At-Zeichen (@) Erlaubt, aber nicht empfohlen:
- Umlaute (ä, ö, ü)
- Leerzeichen Obwohl diese Zeichen technisch möglich sind, ist es ratsam, einfache und leicht lesbare Namen zu wählen, um Komplikationen bei der Verwendung in Skripten oder Anwendungen zu vermeiden.
Schreibe einen Kommentar