Wstęp do [AWK]

AWK to skryptowy (interpretowany) język programowania, przeznaczony głównie do przetwarzania tekstów.

Stwórzmy plik tekstowy o następującej treści:
Asia Nowak
Kasia Kowalska
Basia Nijaka
Zosia Beznazwiska

Następnie utwórzmy skrypt skrypt.awk (rozszerzenie pliku dowolne, Linux nie zwraca na to uwagi, to bardziej informacja dla admina).

Skrypty w awk mają składnie:
<wzorzec> (opcjonalny) { program } (wymagany)
wzorzec – wyrażenie regularne przyporządkowane do pliku wejściowego (case sensitiv – wielkość liter ma znaczenie)
program – fragment programu, który będzie wykonany na tym co znalazł awk, dowolne komendy

AWK przetwarza dane linijka po linijce:

wczytuje pierwszą linijkę – sprawdza czy wzorzec się zgadza – gdy się zgadza wykonuje program
i przechodzi tak po kolei.

skrypt.awk:
/asia/ { print $0; } – wypisze wszystkie wiersze zawierające fraze asia ($0 – wypisz cały wiersz)
/^Zosia/ { print „Witaj ” $1};

$0 – całość
$1 – pierwsza fraza, do spacji (pierwsza kolumna)
* awk dzieli dane na kolumny, jako separator domyślnie używa spacji i tabów
** aby zmienić separator pól, podczas uruchamiania definiujemy jako -F(separator), czyli np -F_
-F – file separator

Uruchomienie skryptu:
awk -f skrypt plik_wejsciowy

słowa kluczowe:
BEGIN – wzorzec na początek
END – wzorzec na koniec
.* – każda możliwa linia (opcjonalne, jeżeli to wywalę to i tak wykona na wszystkich liniach)

Skrypt zliczający wiersze:
BEGIN { ile=0; }
/.*/ { ile=ile+1; }
END { print „Ilość wierszy w pliku: ” ile; }

W celu świadczenia usług na najwyższym poziomie stosujemy pliki cookies, które będą zamieszczane w Państwa urządzeniu (komputerze, laptopie, smartfonie). W każdym momencie mogą Państwo dokonać zmiany ustawień Państwa przeglądarki internetowej i wyłączyć opcję zapisu plików cookies. View more
Zaakceptuj