Sortierbefehl unter Linux mit Beispielen

Um die Daten in einer präzisen Reihenfolge zu organisieren oder die Datei zu sortieren, verwenden Sie den Sortierbefehl. Mit dem Sortierbefehl werden die Daten der Datei zeilenweise sortiert. Wenn ein Datensatz in alphabetischer Reihenfolge vorliegt, wird die Datei alphabetisch sortiert. Andernfalls wird in aufsteigender Reihenfolge sortiert, wenn der Datensatz numerische Informationen enthält. Die Sortierfunktion von Linux bietet eine Vielzahl von Flags, aus denen wir auswählen können, ob die Sortierung umgekehrt oder nach Spalten usw. erfolgen soll. Wir werden in diesem Artikel einige ihrer Flags verwenden.

Verwendung des Sortierbefehls in Beispielen

Mit sort können wir die Zeilen in Textdateien sortieren. Mit der Sortierfunktion können Sie die Datendateien sortieren. Die Ausgabe einer solchen Sortierung wird auf der Standardausgabe gedruckt. Der Inhalt einer Datei kann sequentiell oder alphabetisch neu angeordnet werden, und die Daten können in aufsteigender oder absteigender Reihenfolge angeordnet werden, um das Lesen zu erleichtern. Anhand verschiedener Beispiele des Sortierbefehls zeigen wir nun zunächst im Terminalfenster die Namen der Dateien an, die sich aktuell auf unserem Desktop befinden. Dazu müssen wir jedoch zuerst das Verzeichnis für unseren Desktop mit dem Befehl „cd“ abrufen, dann „Desktop“ eingeben, gefolgt von einem Leerzeichen und dann einem Schrägstrich („/“) am Ende.

Linux@linux:~$ cd Desktop/

Als Ergebnis wird bei Eingabe dieses Befehls das Desktop-Verzeichnis angezeigt. Als nächstes führen wir den Befehl „ls“ aus, um die Liste der aktuell auf dem Desktop befindlichen Dateien anzuzeigen, die auf dem Terminal angezeigt werden.

Linux@linux:~/Desktop$ ls

Das folgende Bild zeigt, wie alle Desktopdateien nach der Ausführung dieses Befehls auf dem Bildschirm angezeigt werden. Es gibt drei Dateien mit der Erweiterung „.txt“, da es sich bei allen um Textdateien mit den Namen „file.txt“, „name.txt“ und „record.txt“ handelt.

Öffnen wir nun eine beliebige Datei auf dem Terminal. In diesem Fall öffnen wir die Datei „name.txt“. Um diese Datei auf dem Terminal zu öffnen, verwenden wir den Befehl „cat“. „Cat“ wird verwendet, um Informationen aus den Dateien zu extrahieren und deren Inhalt auszugeben. Dies erleichtert das Erstellen, Lesen und Verketten der Dateien. Nach der Eingabe eines Leerzeichens wird dann der Name der Datei, „name.txt“, geschrieben.

Linux@linux:~/Desktop$ Katzenname.txt

Wie in der folgenden Abbildung zu sehen ist, öffnet sich beim Ausführen dieses Befehls die Datei „name.txt“ im Terminalfenster. Diese Datei enthält acht Zeilen, die eine Namensliste enthalten. „Jhon“, „Smith“, „Alex“, „Jungkook“, „Dave“, „Seth“, „Wade“ und „Jorge“ stehen auf der Liste.

Im folgenden Ausschnitt können Sie sehen, dass beim Ausführen des oben genannten Befehls ein korrektes Ergebnis angezeigt wird und die Daten der Datei dieselben sind. Sie können diese Datei auch direkt vom Desktop aus anzeigen.

Nachdem wir nun den Befehl haben, sortieren wir diese Datei, indem wir „sort“ eingeben, gefolgt von einem Leerzeichen und dann dem Namen der Datei, der „name.txt“ lautet. Mit diesem Befehl werden die Daten in der Datei alphabetisch sortiert.

Linux@linux:~/Desktop$ Sortiername.txt

Wenn wir diesen Befehl ausführen, können Sie im folgenden Bild sehen, dass die angezeigten Daten der Datei jetzt sortiert sind. Zuvor war das erste Element in der Datei „Jhon“, das mit dem Buchstaben „j“ begann. Das zweite Element war „Alex“, das mit dem Buchstaben „A“ beginnt, dem ersten Alphabet. Jetzt können wir sehen, dass zuerst „Alex“ angezeigt wird. Danach wird „Dave“ und dann „Jhon“ angezeigt. Ebenso können Sie sehen, dass die Daten jetzt sortiert sind.

Sortierung mehrerer Dateien

In diesem Abschnitt sortieren wir mehrere Dateien. In diesem Fall verwenden wir zwei Dateien – „Name.txt“ und „Record.txt“ sind die Dateien, die wir verwenden. Um dies zu erreichen, verwenden wir den Befehl, in den wir zuerst „sort“ eingegeben haben. Dann geben wir ein Leerzeichen sowie die Namen der Dateien ein, nämlich „name.txt“ und „record.txt“.

Linux@linux:~/Desktop$ sort name.txt record.txt

Dieser Befehl zeigt sowohl die Daten aus den Dateien als auch die Ausgabe im Terminal an, wenn wir ihn durch Eingabe ausführen. Wir haben eine Zahl, genau wie in der Datensatzdatei. Diese Zahlen sind in einer Reihenfolge sortiert, oder man könnte sagen, in aufsteigender Reihenfolge. Nach der Sortierung lauten die Zahlen „20 %, „40 %“, „80 %“ und „90 %“. Darüber hinaus sind die Namen in der zweiten Datei „name.txt“ ähnlich alphabetisch geordnet. Die Liste, die sich aus der Sortierung ergibt, umfasst „Alex“, „Dave“, „Jhon“, „Jorge“, „Jungkook“, „Seth“, „Smith“ und „Wade“.

Umkehren der Reihenfolge einer Sortierung mit –R

In diesem Abschnitt verwenden wir eines der Sortierflags von Linux, „-r“, das zum Sortieren der Datei in umgekehrter Reihenfolge verwendet wird. Das Sortieren unter Linux bietet außerdem eine Vielzahl unterschiedlicher Flags für unterschiedliche Aktionen. Als Erstes öffnen wir also eine Datei, die wir auf dem Terminal umkehren müssen. In diesem Fall verwenden wir die Datei „record.txt“. Um diese Datei auf dem Terminal zu öffnen, verwenden Sie den Befehl „cat“. Geben Sie dann den Namen der Datei ein: „record.txt“.

Linux@linux:~/Desktop$ cat record.txt

Wenn wir diesen Befehl ausführen, wird auf dem Bildschirm die Datei „record.txt“ angezeigt.

Jetzt sortieren wir diese Datei in umgekehrter Reihenfolge, indem wir den Befehl eingeben, in den wir zuerst „sort“ eingegeben haben. Dann ein Leerzeichen, gefolgt vom Befehl in umgekehrter Reihenfolge, „-r“. Schließlich der Dateiname „record.txt“.

Linux@linux:~/Desktop$ sort –r record.txt

Nach der Ausführung dieses Befehls können Sie im folgenden Screenshot sehen, dass der Inhalt der Datei in umgekehrter Reihenfolge sortiert ist, oder wir könnten sagen, dass er in absteigender Reihenfolge angezeigt wird, wobei „90 %“ zuerst erscheint, gefolgt von „80 %“, „ 40 %“ und dann „20 %“.

Sortieren der Dateien und Übertragen der Ausgabe in eine andere Datei

Die Datei „name.txt“ ist nun in diesem Abschnitt sortiert. Seine Ausgabe wird in eine andere Datei übertragen. Um dies zu erreichen, verwenden wir den Befehl, in dem wir zuerst „sort“ eingeben, dann den Dateinamenname.txt, gefolgt vom Symbol „>“ und dem Namen der Datei, in die wir die Ausgabe übertragen möchten, in diesem Fall ist „output.txt“.

Linux@linux:~/Desktop$ sort name.txt >output.txt

Jetzt verwenden wir den Befehl „ls“, um zu prüfen, ob die Datei „output.txt“ generiert wurde und ob das Ergebnis der Dateiübertragung „name.txt“ erfolgreich ist.

Linux@linux:~/Desktop$ ls

Wie Sie im folgenden Bild sehen können, erstellt dieses Programm eine neue Datei mit dem Namen „output.txt“ und platziert sie auf dem Desktop.

Im nächsten Schritt verwenden wir nun den Befehl, um diese Datei zu öffnen. Dazu geben wir „cat“ und den Dateinamen „output.txt“ ein und drücken dann die Eingabetaste. Wenn dieser Befehl ausgeführt wird, werden die Daten der Datei auf dem Bildschirm angezeigt. Wie Sie sehen, ist es jetzt alphabetisch sortiert.

Sortieren nach Spalte

Nachdem wir uns nun entschieden haben, die Datei nach Spalten zu sortieren, öffnen wir die Datei, die wir sortieren möchten. Diese Datei hat auf dem Desktop den Namen „file.txt“ und ist zweispaltig. Die erste Spalte enthält die Namen verschiedener Programmierkurse, während die zweite Spalte den Code des Kurses enthält. Öffnen wir die Datei zunächst mit dem Befehl „cat“. Geben Sie dann den Namen der Datei ein, „file.txt“, sodass die Datei beim Ausführen dieses Befehls auf dem Terminal geöffnet wird, wie im folgenden Bild zu sehen ist:

Nachdem wir diese Datei nun sortiert haben, sortieren wir die zweite Spalte. Dazu nutzen wir den Befehl, bei dem wir zunächst „sort“ und dann „-k2“ eingeben. Wir verwenden „-k2“, weil wir die Spalte 2 sortieren. Zum Schluss geben wir „file.txt“ ein.

Linux@linux:~/Desktop$ sort –k2 file.txt

Da die Datei nun auf dem Terminal angezeigt wird, wenn dieser Befehl ausgeführt wird, können Sie in der folgenden Abbildung sehen, dass Spalte zwei sortiert ist, Spalte eins hingegen nicht. Sie können die Spalte eins auch mit dem Schlüsselwort „k1“ im Befehl sortieren. Wie Sie sehen, wird zuerst „Python 110“ angezeigt, gefolgt von „C# 123“, „Java 340“, „C++ 400“ und „Html 444“. Darüber hinaus können wir feststellen, dass die Kurse in Spalte „2“ in aufsteigender Reihenfolge geordnet sind.

Abschluss

Mit vielen Beispielen haben wir in diesem Artikel den Sortierbefehl unter Linux behandelt. Im ersten Abschnitt verwenden wir den Befehl „ls“, um alle Dateien des Desktops aufzulisten, bevor die Sortierung durchgeführt wird. Wir haben „Sortieren“ verwendet, um die Dateien mit Datensätzen alphabetisch zu ordnen oder diese Dateien nach dem Sortieren alphabetisch zu ordnen. Wir haben auch besprochen, wie man mehrere Dateien sortiert. Die Flags des Sortierbefehls wurden im zweiten Abschnitt behandelt, wo wir über das Sortieren in umgekehrter Reihenfolge, das Verschieben der Ergebnisse nach dem Sortieren in eine andere Datei und das Sortieren nach Spalte sprachen.

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen