Polecenie „AWK” Linux to potężne narzędzie dla różnych operacji na plikach tekstowych, takich jak wyszukiwanie, wymiana i drukowanie. Jest łatwy w użyciu z danych tabelary. Podczas pracy z plik tekstowym zawierającym dane tabelary. W tym samouczku pokażemy, jak wydrukować pierwszą kolumnę i/lub ostatnią kolumnę pliku linii lub tekstu.
Wydrukuj pierwszą kolumnę i/lub ostatnia kolumna wyjścia polecenia
Wiele poleceń Linux, takich jak polecenie „LS”, generuje wyjścia tabelarne. Tutaj pokażemy, jak wydrukować pierwszą kolumnę i/lub ostatnią kolumnę z wyjścia polecenia „LS -L”.
Przykład 1: Wydrukuj pierwszą kolumnę wyjścia polecenia
Poniższe polecenie „AWK” wydrukuje pierwszą kolumnę z wyjścia polecenia „LS -l”.
$ ls -l
$ ls -l | awk 'drukuj 1 $'
Następujące dane wyjściowe zostaną wyprodukowane po uruchomieniu powyższych poleceń.
Przykład 2: Wydrukuj ostatnią kolumnę wyjścia polecenia
Poniższe polecenie „AWK” wydrukuje ostatnią kolumnę z wyjścia polecenia „LS -l”.
$ ls -l
$ ls -l | awk 'print $ nf'
Następujące dane wyjściowe zostaną wyprodukowane po uruchomieniu powyższych poleceń.
Przykład 3: Wydrukuj pierwsze i ostatnie kolumny wyjścia polecenia
Poniższe polecenie „AWK” wydrukuje pierwsze i ostatnie kolumny z wyjścia polecenia „LS -L”.
$ ls -l
$ ls -l | awk 'drukuj 1 $, $ nf'
Następujące dane wyjściowe zostaną wyprodukowane po uruchomieniu powyższych poleceń.
Wydrukuj pierwszą kolumnę i/lub ostatnia kolumna pliku tekstowego
Tutaj pokażemy, jak użyć polecenia „AWK”, aby wydrukować pierwszą kolumnę i/lub ostatnią kolumnę pliku tekstowego.
Utwórz plik tekstowy
Aby śledzić ten samouczek, utwórz plik tekstowy o nazwie klienci.tekst z następującą treścią. Plik zawiera trzy typy danych klientów: nazwa z numerem identyfikacyjnym, e -mail i numeru telefonu. Znak TAB (\ t) służy do oddzielenia tych wartości.
Nazwa Telefon e -mailPrzykład 4: Wydrukuj pierwszą kolumnę pliku bez użycia separatora pola
Jeśli w poleceniu „AWK” nie jest używany żaden separator, wówczas przestrzeń jest używana jako domyślny separator pola. Następujące polecenie „AWK” wydrukuje pierwszą kolumnę za pomocą domyślnego separatora.
Klienci $ CAT.tekst
$ awk 'drukuj klientów 1 $.tekst
Następujące dane wyjściowe zostaną wyprodukowane po uruchomieniu powyższych poleceń. Zauważ, że wyjście pokazuje tylko imię klienta, ponieważ przestrzeń jest stosowana jako separator pola. Rozwiązanie tego problemu pokazano w następnym przykładzie.
Przykład 5: Wydrukuj pierwszą kolumnę pliku z ogranicznikiem
Tutaj jest używany jako separator pola do wydrukowania pierwszej kolumny pliku. Opcja „-f” służy do ustawienia separatora pola.
Klienci $ CAT.tekst
$ awk -f '\ t' 'drukuj 1 $ „.tekst
Następujące dane wyjściowe zostaną wyprodukowane po uruchomieniu powyższych poleceń. Treść pliku jest podzielona na trzy kolumny na podstawie \ t. Dlatego nazwa i identyfikator klienta są drukowane jako pierwsza kolumna. Jeśli chcesz wydrukować nazwę klienta bez identyfikatora, przejdź do następnego przykładu.
Jeśli chcesz wydrukować nazwę klienta bez identyfikatora, musisz użyć „-” jako separatora pola. Poniższe polecenie „AWK” wydrukuje nazwę klienta tylko jako pierwsza kolumna.
Klienci $ CAT.tekst
$ awk -f ' -' 'drukuj 1 $ „.tekst
Następujące dane wyjściowe zostaną wyprodukowane po uruchomieniu powyższych poleceń. Wyjście obejmuje pełne nazwy klientów bez ich identyfikatorów.
Przykład 6: Wydrukuj ostatnią kolumnę pliku
Poniższe polecenie „AWK” wydrukuje ostatnią kolumnę klientów.tekst. Ponieważ w poleceniu nie jest używany separator pola, przestrzeń będzie używana jako separator pola.
Klienci $ CAT.tekst
$ awk 'print $ nf' klienci.tekst
Następujące dane wyjściowe zostaną wyprodukowane po uruchomieniu powyższych poleceń. Ostatnia kolumna zawiera numery telefonów, jak pokazano na wyjściu.
Przykład 7: Wydrukuj pierwsze i ostatnie kolumny pliku
Poniższe polecenie „AWK” wydrukuje pierwszą i ostatnią kolumny klientów.tekst. Tutaj Tab (\ t) jest używany jako separator pola do podziału zawartości na kolumny. Tutaj Tab (\ t) jest używany jako separator do wyjścia.
Klienci $ CAT.tekst
$ awk -f "\ t" 'drukuj 1 $ "\ t" $ nf' klienci.tekst
Następujące dane wyjściowe pojawią się po uruchomieniu powyższych poleceń. Treść jest podzielona na trzy kolumny przez \ t; Pierwsza kolumna zawiera nazwę i identyfikator klienta, a druga kolumna zawiera numer telefonu. Pierwsze i ostatnie kolumny są drukowane za pomocą \ t jako separatora.
Wniosek
Polecenie „AWK” można zastosować na różne sposoby, aby uzyskać pierwszą kolumnę i/lub ostatnią kolumnę z dowolnego wyjścia polecenia lub z danych tabelarycznych. Należy zauważyć, że separator pola jest wymagany w poleceniu, a jeśli nie jest podany, wówczas używana przestrzeń jest używana.