Dlaczego moje wyniki w awk są inne niż w przykładzie? - linux, bash, awk

Uczę się awk i kiedy próbuję kod przykładowy tutaj (gnu.org awk Podręcznik użytkownika, rozdział 4.6), otrzymuję różne odpowiedzi dla niektórych linii.

W szczególności, jeśli kolumna "bezczynności" jest pusta (6spacje), skrypt pobiera dane z kolejnej "niepustej" kolumny (tj. kolumny "JCPU"). Również kolumna "bezczynności" jest pomijana, gdy powinna być próbą przekonwertowania "15dni" na sekundy (awk wybiera następną kolumnę dla jej "bezczynności").

Próbuję dowiedzieć się, dlaczego moje wyniki awk nie pasują do wyników tego przykładu. Upewniłem się, że moje szerokości kolumn odpowiadają tym w parametrze FIELDWIDTHS. Używam 64-bitowego Ubuntu 14.04 LTS

Moje wyniki to:

    hzuo    ttyV0   9
hzang   ttyV3   50
eklye   ttyV5   7
dportein    ttyV6   107
gierd   ttyD3   1
dave    ttyD4   4
brent   ttyp0   286
dave    ttyq4   46

Odpowiedzi:

1 dla odpowiedzi № 1

Jak wskazał Mark Setchell istnieje kilkawersje awk. W wpisie do Wikipedii tego narzędzia można przeczytać o kilku z nich w dziale Historia, a także pod nagłówkami Wersje i wdrożenia. (http://en.wikipedia.org/wiki/AWK)

awk -W version

informuje, której wersji aktualnie używasz w niektórych wersjach awk. Możesz także przeczytać dość obszerny podręcznik gawk, aby dowiedzieć się więcej o narzędziu.

Twój problem jest prawdopodobnie atrybutem różnic w implementacjach różnych wersji.


Menu