Verwenden Sie den Befehl awk, um die letzte Spalte aus einer Datei zu drucken

Verwenden Sie den Befehl awk, um die letzte Spalte aus einer Datei zu drucken

Manchmal kommt eine Situation, in der wir die vollständige Datei nicht lesen müssen. Wir müssen nur einen Teil der Datei angezeigt werden. In dieser Situation versuchen wir, einige effiziente Möglichkeiten zu finden, um sie zu erhalten, ohne den gesamten Dateiinhalt zu durchlaufen. Der Befehl "awk" ist der eine.

Der Befehl „awk“ ist ein Befehlszeilendienstprogramm, das unter Linux verwendet wird, um Suchvorgänge mit unterschiedlichen Mustern und zur Verarbeitung durchzuführen. Es ist ein Befehl, mit dem ein Codierer kleine, aber effiziente Codezeilen in Form von Anweisungen codieren kann. Es ist also auch ein stark verwendeter Befehl für die Textverarbeitung.

Mit Hilfe des Befehls „awk“ kann ein Programmierer Daten und Teile eines bestimmten Textes basieren, basierend auf dem dem Befehl bereitgestellten Muster. Der Befehl awk kann die Zeile nach Zeile scannen und durchsuchen, die jede Zeile als Eingabe in Felder übergeben, Felder mit Eingabestellen vergleichen und übereinstimmen und Anweisungen ausführen, die vom Programmierer auf übereinstimmenden Zeilen angegeben wurden. AWK -Befehle können für die Erzeugung von Berichten in bestimmten Formaten und für das Ändern von Daten in den Dateien verwendet werden.

Syntax:

Im Folgenden finden Sie die Syntax des awk -Befehls:

awk 'action' your_file_name.txt

In diesem Befehl wird der Parameter „Aktion“ in der Syntax verwendet, um die Aktion zu definieren, die unser Befehl ausführen soll. Danach werden wir den Namen unserer Datei als Parameter übergeben, mit dem wir arbeiten werden.

Beispiel Nr. 1:

In diesem Beispiel werden wir versuchen, die NTH oder die letzte Spalte der Datei mit dem Befehl awk zu drucken. Lassen Sie uns zunächst eine neue Datei erstellen, die einige Daten zu Mitarbeitern enthält. Um eine neue Datei zu erstellen, werden wir den folgenden Befehl unten ausführen:

Linux@Linux-virtualBox: ~ $ Touch-Mitarbeiter.txt

Nach dem Ausführen des obigen Befehls wird eine neue Datei in unserem Heimverzeichnis erstellt. Es ist nicht erforderlich, eine Datei im Home -Verzeichnis zu erstellen. Sie können sie überall in Ihrem System erstellen. Jetzt werden wir überprüfen, ob die Datei erstellt wird oder nicht. Dafür werden wir einfach das Heimverzeichnis überprüfen. Wie im folgenden Snippet gezeigt, haben wir eine neue Datei namens Mitarbeiter erstellt.txt.

Jetzt werden wir der Datei mit einem Notizblock einige Inhalte hinzufügen, wie im Snippet unten gezeigt. Wir haben fünf Mitarbeiterdaten hinzugefügt, die den Namen, die Bezeichnung und das Gehalt des Mitarbeiters enthalten. Die Daten sind unten angezeigt, die in der Datei „Mitarbeiter gespeichert sind.txt".

Namensbezeichnungsgehalt
Jhone Manager $ 142
Rick Assistent $ 543
Linda Designer $ 148
Alex Proj Manager $ 342

Jetzt wird die Datei erfolgreich mit dem Inhalt erstellt und um die letzte Spalte der Datei mit dem Befehl awk zu erhalten. Dafür werden wir den unten genannten Befehl ausführen:

linux@linux-virtualBox: ~ $ awk 'print $ nf' Mitarbeiter.txt

Im obigen Befehl haben wir die Druckanweisung zusammen mit dem Schlüsselwort „$ nf“ übergeben, was bedeutet. Der letzte „Angestellte“.txt ”ist der Name der Datei, deren letzte Spalte gedruckt wird. Wenn wir die Eingabetaste drücken, werden wir den Befehl ausführen, auf dem die unten angezeigte Ausgabe auf dem Terminal erstellt wird, in dem das Gehalt der Mitarbeiter angezeigt wird.

Gehalt
$ 142
$ 543
$ 148
$ 342

Beispiel Nr. 2:

In diesem Beispiel werden wir die letzte Spalte der Datei lesen, diesmal verwenden wir eine andere Methode, die hauptsächlich verwendet wird, wenn die Anzahl der Spalten vom Benutzer bekannt ist. Lassen Sie uns zunächst eine neue Datei erstellen, die die Daten von fünf Schülern enthält. Es enthält den Namen der Schüler, deren Klassen und die von ihnen erhaltenen Noten.

linux@linux-virtualBox: ~ $ nano Student.txt

Wenn wir den obigen Befehl ausführen, erstellt er eine neue Datei und öffnet sie automatisch in einem Texteditor. Jetzt werden wir die Daten der Schüler in der Datei hinzufügen und "Strg + x" drücken. Wir speichern die Datei, nachdem wir den Inhalt hinzugefügt haben. In unserem Fall haben wir Daten von fünf Studenten hinzugefügt. Durch das Speichern der Datei werden wir unser Hauptziel zu dem Drucken der letzten Spalte der Datei in Richtung unseres Hauptziels bewegen. Unten finden Sie den Inhalt der Datei „Student.txt".

Nennen Sie Klassenmarken
Jhone Gradc 154
Rick Grada 124
Linda Gradeb 144
Alex Grada 122

Jetzt werden wir den Befehl awk ausführen, um die letzte Spalte der Datei zu drucken. Nehmen wir diesmal an, wir kennen die Spalten der Datei und möchten die letzte Spalte davon drucken. Dafür verwenden wir den Befehl awk zusammen mit der Spaltennummer, die auf dem Terminal gedruckt wird. Wie wir wissen, dass es in unserer Datei nur drei Spalten gibt, die der Name der Schüler, ihrer Klassen und der Marke sind. Um die letzte Spalte auszudrucken, werden wir den Befehl unter dem Abgeschäft ausführen:

linux@linux-virtualBox: ~ $ awk 'print $ 3' Student.txt

In diesem Befehl haben wir zusammen mit dem Druckbefehl „$ 3“ übergeben, was bedeutet.txt". Wenn wir diesen Befehl ausführen, wird die folgende Ausgabe gedruckt, in der die Markierungen der Schüler gedruckt werden. Wir können die Ausgabe auch mit dem oben angezeigten Dateiausschnitt vergleichen. Die Datei enthält nur drei Spalten und die letzte Spalte der Datei enthält die Markierungen der Schüler. Dieser Befehl kann verwendet werden, um eine Spalte der Datei zu drucken. Es wird nicht nur angegeben, um die letzte Spalte zu drucken. Durch Ändern des Schilds „$ 3“ auf „$ 2“ können wir die zweite Spalte drucken. Nachdem wir den obigen Befehl ausgeführt haben, erhalten wir die unten angezeigte Ausgabe.

Markierungen
154
124
144
122

Abschluss

Wir haben einen Befehl „awk“ untersucht, der häufig verwendet wird, um den Inhalt der benötigten Datei direkt zu treffen. Anschließend haben wir mehrere Beispiele implementiert, um die angegebene letzte Spalte der Dateien mit dem awk -Befehl zu lesen. Sie können weitere Beispiele implementieren, um eine bessere Vorstellung davon zu erhalten, wie der awk -Befehl verwendet werden kann.