Linux-Befehl tr
Der Linux-Befehl tr wird verwendet, um Zeichen in einer Datei umzuwandeln oder zu löschen.
Der Befehl tr liest Daten von der Standardeingabe, übersetzt die Zeichenfolge und gibt das Ergebnis an die Standardausgabe aus.
Syntax
tr [-cdst][--help][--version][第一字符集][第二字符集] tr [OPTION]…SET1[SET2]
Parameter description:
- -c, --complement: Kehrt die Menge der ausgewählten Zeichen um. Das heißt, der Teil, der mit SET1 übereinstimmt, bleibt unverarbeitet, und der verbleibende nicht übereinstimmende Teil wird umgewandelt.
- -d, --delete: Löscht Zeichen in der angegebenen Menge.
- -s, --squeeze-repeats: Reduziert aufeinanderfolgende wiederholte Zeichen auf ein einzelnes angegebenes Zeichen.
- -t, --truncate-set1: Den SET1-Bereich auf die Länge von SET2 kürzen.
- --help: Informationen zur Programmnutzung anzeigen.
- --version: Versionsinformationen des Programms selbst anzeigen.
Zeichensatzbereiche:
- \NNN Zeichen mit Oktalwert NNN (1 bis 3 Oktalziffern)
- \\ Backslash
- \a Ctrl-G Klingel
- \b Ctrl-H Rücktaste
- \f Ctrl-L Seitenvorschub
- \n Ctrl-J Neue Zeile
- \r Ctrl-M Wagenrücklauf
- \t Ctrl-I Tab-Taste
- \v Ctrl-X Horizontal-Tabulator
- CHAR1-CHAR2 Zeichenbereich von CHAR1 bis CHAR2, basierend auf der ASCII-Code-Reihenfolge, kann nur von klein nach groß sein, nicht von groß nach klein.
- [CHAR*]: Dies ist eine SET2-spezifische Einstellung, die das angegebene Zeichen wiederholt, bis sie die gleiche Länge wie SET1 erreicht.
- [CHAR*REPEAT] Dies ist ebenfalls eine SET2-spezifische Einstellung, die das angegebene Zeichen für die angegebene Anzahl an REPEAT-Wiederholungen wiederholt (die REPEAT-Zahl wird oktal berechnet, beginnend bei 0).
- [:alnum:]: Alle alphabetischen Zeichen und Ziffern
- [:alpha:]: Alle alphabetischen Zeichen
- [:blank:]: Alle horizontalen Leerzeichen
- [:cntrl:]: Alle Steuerzeichen
- [:digit:]: Alle Ziffern
- [:graph:]: Alle druckbaren Zeichen (ohne Leerzeichen)
- [:lower:]: Alle Kleinbuchstaben
- [:print:]: Alle druckbaren Zeichen (einschließlich Leerzeichen)
- [:punct:]: Alle Satzzeichen
- [:space:]: Alle horizontalen und vertikalen Leerzeichen
- [:upper:]: Alle Großbuchstaben
- [:xdigit:]: Alle hexadezimalen Ziffern
- [=CHAR=]: Alle Zeichen, die dem angegebenen Zeichen entsprechen (CHAR in den Gleichheitszeichen steht für ein benutzerdefiniertes Zeichen, das Sie definieren können)
Beispiele
Um alle Kleinbuchstaben in der Datei testfile in Großbuchstaben umzuwandeln, verwenden Sie den folgenden Befehl:
cat testfile |tr a-z A-Z
Der Inhalt der Datei testfile ist wie folgt:
$ cat testfile #testfile原来的内容 Linux networks are becoming more and more common, but scurity is often an overlooked issue. Unfortunately, in today’s environment all networks are potential hacker targets, fro0m tp-secret military research networks to small home LANs. Linux Network Securty focuses on securing Linux in a networked environment, where the security of the entire network needs to be considered rather than just isolated machines. It uses a mix of theory and practicl techniques to teach administrators how to install and use security applications, as well as how the applcations work and why they are necesary.
Nach Verwendung des Befehls tr zur Umwandlung der Groß-/Kleinschreibung erhält man das folgende Ausgabeergebnis:
$ cat testfile | tr a-z A-Z #转换后的输出 LINUX NETWORKS ARE BECOMING MORE AND MORE COMMON, BUT SCURITY IS OFTEN AN OVERLOOKED ISSUE. UNFORTUNATELY, IN TODAY’S ENVIRONMENT ALL NETWORKS ARE POTENTIAL HACKER TARGETS, FROM TP-SECRET MILITARY RESEARCH NETWORKS TO SMALL HOME LANS. LINUX NETWORK SECURTY FOCUSES ON SECURING LINUX IN A NETWORKED ENVIRONMENT, WHERE THE SECURITY OF THE ENTIRE NETWORK NEEDS TO BE CONSIDERED RATHER THAN JUST ISOLATED MACHINES. IT USES A MIX OF THEORY AND PRACTICL TECHNIQUES TO TEACH ADMINISTRATORS HOW TO INSTALL AND USE SECURITY APPLICATIONS, AS WELL AS HOW THE APPLCATIONS WORK AND WHY THEY ARE NECESARY.
Die Umwandlung der Groß-/Kleinschreibung kann auch mit den Parametern [:lower][:upper] erreicht werden. Verwenden Sie zum Beispiel den folgenden Befehl:
cat testfile |tr [:lower:] [:upper:]
Das Ausgabeergebnis ist wie folgt:
$ cat testfile | tr [:lower:] [:upper:] #转换后的输出 LINUX NETWORKS ARE BECOMING MORE AND MORE COMMON, BUT SCURITY IS OFTEN AN OVERLOOKED ISSUE. UNFORTUNATELY, IN TODAY’S ENVIRONMENT ALL NETWORKS ARE POTENTIAL HACKER TARGETS, FROM TP-SECRET MILITARY RESEARCH NETWORKS TO SMALL HOME LANS. LINUX NETWORK SECURTY FOCUSES ON SECURING LINUX IN A NETWORKED ENVIRONMENT, WHERE THE SECURITY OF THE ENTIRE NETWORK NEEDS TO BE CONSIDERED RATHER THAN JUST ISOLATED MACHINES. IT USES A MIX OF THEORY AND PRACTICL TECHNIQUES TO TEACH ADMINISTRATORS HOW TO INSTALL AND USE SECURITY APPLICATIONS, AS WELL AS HOW THE APPLCATIONS WORK AND WHY THEY ARE NECESARY.Andere Erweiterungen
Linux-Befehlsreferenz