13.16. Przetwarzanie pól o stałej długości
Problem
Chcemy odczytać i poddać analizie dane, które są zapisywane w polach o określonej długości.
Rozwiązanie
Należy wykorzystać interpreter Perl lub program gawk
w wersji 2.13 bądź późniejszej. Załóżmy, że plik danych zawiera następujące informacje:
$ cat stała_długość
Kolumna1------------Kolumna2----------------------Kolumna3
Rekord1 Pole1 Rekord1 Pole2 Rekord1 Pole3
Rekord2 Pole1 Rekord2 Pole2 Rekord2 Pole3
Rekord3 Pole1 Rekord3 Pole2 Rekord3 Pole3
Przetwarzanie danych można zlecić programowi GNU gawk
, ustawiając odpowiednią długość pól w zmiennej FIELDWIDTHS
, wyznaczając odpowiednią wartość zmiennej OFS
oraz definiując operację przypisania w taki sposób, aby mechanizm gawk
mógł przepisać dany rekord ...
Get Bash. Receptury now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.