���� ��������� ������ AWK

����������

Part: ������������� ������� ����� � ������� SED � AWK

������� UNIX �������� ����������� �����������, ������� ������������ ������� ����� ������: grep, egrep, fgrep, lex sed. ��������������� �������� sed ������������ ���������� � �������� ������ ����������� ������� �������������� ��������� ed. ��� �������� �� �������� ����, ��������� ������ ��������� ������� ����� ���� ������ ��� � ������� awk, ��� � � ������� sed � ����� ������� ������� ����� � ������� sed ����� ������. ������, ������� ��������� �������� (��� 4. � 5.) �������� ����� �������� � �������������� awk. ����� ����, ������� awk ���������� ���� �� ����� ������������ � ��������� ��������� ����������� � �������, ���������� ���������, ������������� ���������� � �.�., ���� �� ������������ �� ���� �� ����������������� ��������.

�������:

1. ��������� ���������� ����� (input)

SED: $= (10.2 c.)

AWK: END { PRINT NR } (15.0 c.)

2. ���������� ��� ������, ���������� "olga"

SED: /olga/p (11.6 c.)

AWK: /olga/ (25.6 c.)

3. ���������� ��� ������, ���������� "olga", "mike" ��� "mal"

� ������ ��������

SED:  /olga/p

      /olga/d

      /mike/p

      /mike/d

      /mal/p

      /mal/d            (15.8 c.)



AWK:  /olga\bverb mike\everb mal/   (29.9 c.)

4. ���������� ������ ���� ������ ������

SED: /[^ ]* [ ]*[^ ]* [ ]*\([^ ]*\).*/s//\1/p (29.0 c.)

AWK: {PRINT $3} (33.3 c.)

5. ���������� ������� ������, � ����� ������ ���� ������ ������

SED: /[^ ]* [ ]*\([^ ]*\) [ ]*\([^ ]*\).*/s//\2\1/p (30.5 c.)

AWK: {PRINT $3 $2} (38.9 c.)

6. �������� ������, ���������� "olga", "mike" ��� "mal" �������������� � ������: folga, fmike, fmal

� ������ ��������

SED:     /olga/w folga

         /mike/w fmike

         /mal/w fmal         (16.1 c.)



AWK:     /olga/ {print >  "folga"}

         /mike/ {print >  "fmike"}

         /mal/  {print >  "fmal"}   (46.4 c.)


<<< ���������� ��������: 4   >>>