So drucken Sie die erste Spalte oder die letzte Spalte oder beides mit 'awk'

So drucken Sie die erste Spalte oder die letzte Spalte oder beides mit 'awk'

Der Befehl 'awk' von Linux ist ein leistungsstarkes Dienstprogramm für verschiedene Vorgänge in Textdateien wie Suche, Ersetzen und Drucken. Es ist einfach mit tabellarischen Daten zu verwenden. Wenn Sie mit einer Textdatei arbeiten, die tabuläre Daten enthält und die Daten einer bestimmten Spalte drucken möchten, ist der Befehl 'awk' die beste Option. In diesem Tutorial zeigen wir Ihnen, wie Sie die erste Spalte und/oder die letzte Spalte einer Zeile oder einer Textdatei drucken können.

Drucken Sie die erste Spalte und/oder die letzte Spalte eines Befehlsausgangs aus

Viele Linux -Befehle wie der Befehl 'ls' generieren tabellarische Ausgänge. Hier zeigen wir Ihnen, wie Sie die erste Spalte und/oder die letzte Spalte aus der Ausgabe des Befehls 'ls -l' drucken können.

Beispiel 1: Drucken Sie die erste Spalte eines Befehlsausgangs aus

Der folgende Befehl 'awk' druckt die erste Spalte aus der Ausgabe des Befehls 'ls -l'.

$ ls -l
$ ls -l | awk 'print $ 1'

Die folgende Ausgabe wird erstellt, nachdem die obigen Befehle ausgeführt wurden.

Beispiel 2: Drucken Sie die letzte Spalte eines Befehlsausgangs aus

Der folgende Befehl 'awk' druckt die letzte Spalte aus der Ausgabe des Befehls 'ls -l'.

$ ls -l
$ ls -l | awk 'print $ nf'

Die folgende Ausgabe wird erstellt, nachdem die obigen Befehle ausgeführt wurden.

Beispiel 3: Drucken Sie die ersten und letzten Spalten eines Befehlsausgangs aus

Der folgende Befehl 'awk' druckt die ersten und letzten Spalten aus der Ausgabe des Befehls 'ls -l' aus.

$ ls -l
$ ls -l | awk 'print $ 1, $ nf'

Die folgende Ausgabe wird erstellt, nachdem die obigen Befehle ausgeführt wurden.

Drucken Sie die erste Spalte und/oder die letzte Spalte einer Textdatei

Hier zeigen wir Ihnen, wie Sie den Befehl 'awk' verwenden, um die erste Spalte und/oder die letzte Spalte einer Textdatei zu drucken.

Erstellen Sie eine Textdatei

Um diesem Tutorial zu folgen, erstellen Sie eine Textdatei mit dem Namen Kunden.txt mit dem folgenden Inhalt. Die Datei enthält drei Arten von Kundendaten: Name mit ID, E -Mail und Telefonnummer. Das Tab -Zeichen (\ t) wird verwendet, um diese Werte zu trennen.

Nennen Sie E -Mail -Telefon
Jonathon Bing - 1001 [email protected] 01967456323
Micheal Jackson - 2006 [email protected] 01756235643
Janifer Lopez - 3029 [email protected] 01822347865
John Abraham - 4235 John@Google Mail.com 01590078452
Mir Sabbir - 2756 Mir@Google Mail.com 01189523978

Beispiel 4: Drucken Sie die erste Spalte einer Datei, ohne einen Feldabscheider zu verwenden

Wenn im Befehl 'awk' kein Feldabscheider verwendet wird, wird ein Speicherplatz als Standardfeldtrennzeichen verwendet. Der folgende Befehl 'awk' druckt die erste Spalte mithilfe des Standardabscheiders.

$ cat Kunden.txt
$ awk 'print $ 1' Kunden.txt

Die folgende Ausgabe wird erstellt, nachdem die obigen Befehle ausgeführt wurden. Beachten Sie, dass die Ausgabe nur den Vornamen des Kunden zeigt, da der Speicherplatz als Feldabscheider angewendet wird. Die Lösung für dieses Problem wird im nächsten Beispiel angezeigt.

Beispiel 5: Drucken Sie die erste Spalte einer Datei mit einem Trennzeichen aus

Hier wird \ t als Feldabscheider verwendet, um die erste Spalte der Datei zu drucken. Die Option '-f' wird verwendet, um den Feldabscheider einzustellen.

$ cat Kunden.txt
$ awk -f '\ t' 'print $ 1' Kunden.txt

Die folgende Ausgabe wird erstellt, nachdem die obigen Befehle ausgeführt wurden. Der Inhalt der Datei ist basierend auf \ t in drei Spalten unterteilt. Daher werden der Name und die ID des Kunden als erste Spalte gedruckt. Wenn Sie den Namen des Kunden ohne die ID ausdrucken möchten, fahren Sie mit dem nächsten Beispiel fort.


Wenn Sie den Namen des Kunden ohne die ID ausdrucken möchten, müssen Sie als Feldabscheider verwenden "-"-". Der folgende Befehl 'awk' druckt den Namen des Kunden nur als erste Spalte aus.

$ cat Kunden.txt
$ awk -f ' -' 'print $ 1' Kunden.txt

Die folgende Ausgabe wird erstellt, nachdem die obigen Befehle ausgeführt wurden. Die Ausgabe enthält die vollständigen Namen der Kunden ohne ihre IDs.

Beispiel 6: Drucken Sie die letzte Spalte einer Datei aus

Der folgende Befehl 'awk' wird die letzte Spalte der Kunden ausdrucken.txt. Da im Befehl kein Feldabscheider verwendet wird, wird der Speicherplatz als Feldabscheider verwendet.

$ cat Kunden.txt
$ awk 'print $ nf' Kunden.txt

Die folgende Ausgabe wird erstellt, nachdem die obigen Befehle ausgeführt wurden. Die letzte Spalte enthält Telefonnummern, wie in der Ausgabe gezeigt.

Beispiel 7: Drucken Sie die ersten und letzten Spalten einer Datei aus

Der folgende Befehl 'awk' wird die ersten und letzten Kundenspalten ausdrucken.txt. Hier wird Registerkarte (\ t) als Feldtrennzeichen verwendet, um den Inhalt in Spalten zu unterteilen. Hier wird Registerkarte (\ t) als Trennzeichen für die Ausgabe verwendet.

$ cat Kunden.txt
$ awk -f "\ t" 'print $ 1 "\ t" $ nf' Kunden.txt

Nach dem Ausführen der obigen Befehle wird die folgende Ausgabe angezeigt. Der Inhalt ist durch \ t in drei Spalten unterteilt; Die erste Spalte enthält den Namen und die ID des Kunden und die zweite Spalte enthält die Telefonnummer. Die ersten und letzten Spalten werden mit \ t als Trennzeichen gedruckt.

Abschluss

Der Befehl 'awk' kann auf unterschiedliche Weise angewendet werden, um die erste Spalte und/oder die letzte Spalte aus jeder Befehlsausgabe oder aus tabellarischen Daten abzurufen. Es ist wichtig zu beachten.