П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое







Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 91860 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 28165 раз(а).

Учебник HTML.
Просмотров 54686 раз(а).

Руководство по PHP5.
Просмотров 25084 раз(а).

Хостинг через призму DNS.
Просмотров 29347 раз(а).

Подборка текстов стандартных документов.
Просмотров 28115 раз(а).

Учебник PHP - Самоучитель
Просмотров 32398 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 34107 раз(а).

Внешние атаки...
Просмотров 26108 раз(а).

Учебник PHP.
Просмотров 22009 раз(а).

SSI в примерах.
Просмотров 17307 раз(а).



 
 



Руководство пользователя для GNU Awk

5. Чтение входных файлов

5.8 Явный ввод по команде getline

5.8.2 Использование getline без аргументов

Команда getline без аргументов может использоваться для чтения из текущего входного файла. Все, что она делает в этом случае, состоит в чтении следующей входной записи и расчленении ее на поля. Это полезно, если вы закончили обработку текущей записи и хотите подвергнуть следующую запись какой-то специальной обработке.

Рассмотрим пример:

awk '-
if ((t = index($0, "/*")) != 0) -
# value will be "" if t is 1 tmp = substr($0, 1, t - 1) u = index
(substr($0, t + 2), "*/") while (u == 0) -
if (getline != 0) -
m = "unexpected EOF or error" m = (m ": " ERRNO) print m ? "/dev/stderr"
 exit "" t = -1 u = index($0, "*/") "" # substr expression will be "" if */
# occurred at end of line $0 = tmp substr($0, t + u + 3) "" print $0 ""'

Эта awk-программа удаляет все комментарии Cи-типа, `/* ... */', из ввода. Посредством замены `print $0' другими операторами вы можете осуществить более сложную обработку ввода с удаленными комментариями, такую как поиск соответствий регулярному выражению. Эта программа имеет один недостаток --- она не работает, если один комментарий кончается, а другой начинается на той же строке.

Эта форма команды getline устанавливает NF (количество полей; см. раздел 5.2 [Обследование полей], стр. 40), NR (количество прочитанных пока записей; см. раздел 5.1 [Как ввод разделяется на записи, стр. 37), FNR (количество записей, прочитанных и текущего файла) и значение $0.

Замечание: новое значение $0 используется для проверки образцов любых последующих правил. Исходное значение $0, которое вызвало правило с выполнением getline, пропадает (d.c.). В отличие от этого, следующий оператор читает новую запись и немедленно начинает ее обработку нормальным образом, начиная с первого правила в программе. См. раздел 9.7 [Следующий оператор], стр.111.

Назад | Вперед
Содержание (общее) | Содержание раздела | Содержание раздела



 





Copyright © 2005-2011 Project.Net.Ru