Компьютерные сети и технологии
Привет
Пользователь:

Пароль:



[ ]
[ ]

В сети
Гостей: 8
Участников: 0
На странице: 1
Участников: 3944, Новичок: Lelandabisp

Разное


(Занятие 10) awk - язык сканирования и обработки текста
Операционная система UNIX (руководство пользователя)
на Friday 04 August 2006
от список авторов отправить по email статья печатать статья
в Сетевые Операционные Системы ОС > Linux - Unix



10.5. Примеры некоторых полезных программ

awk может использоваться для написания больших программ некоторой сложности. В нее могут входить некоторые короткие программы, которые для вас являются полезными и поучительными. Приведем некоторые из них.

Напечатать последнее поле каждой вводной строки:

    

Напечатать 10-ю вводную строку:

    NF == 10

Напечатать последнюю вводную строку:

    
    END 

Напечатать строки, которые не имеют 4-го поля:

    NF != 4 

Напечатать вводные строки, которые имеют более 4-х полей:

    NF > 4

Напечатать последние поля вводных строк, начиная с 5-го:

    $NF > 4

Напечатать общее число вводных строк:

    END 

Напечатать обшее число полей:

        
    END 

Напечатать общее число символов вводного файла:

        
    END 

Напечатать общее число строк, которые содержат строку "Asia":

       /Asia/   
    END 

(nlines++ имеет тот же эффект, что и nlines = nlines+1).

10.6. Сообщения об ошибках

Если вы сделаете ошибку в программе awk, то получите сообщение об ошибке. Например, если вы попытаетесь запустить программу:

    $3 < 200 

то получите сообщение об ошибке:

        awk: syntax error at source line 1
        contex is
             $3 < 200 <<<
        awk: illegal statement at source line 1
             1 extra (

Некоторые ошибки могут быть обнаружены во время работы программы. Например, если вы попытаетесь поделить на 0 (ноль), то awk остановит обработку и распечатает номер записи вводного файла (NR) и номер строки в программе.



Поиск Компьютерные сети и технологии

Copyright © 2006 - 2020
При использовании материалов сайта ссылка на xnets.ru обязательна!