П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

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

MySQL

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

Хостинг

Другое








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

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

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

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

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

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

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

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

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

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

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

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



 
 
| Добавить в избранное | Сделать стартовой | Помощь





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

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

5.5.5 Обзор правил разделения на поля

В соответствии со стандартом POSIX, awk должен вести себя так, как будто каждая запись разделяется на поля во время ее чтения. В частности, это означает, что можно менять значение FS после прочтения записи, и значения полей (т.е., как они были выделены) должны соответствовать старому значению FS, а не новому. Однако, многие реализации awk действуют не так. Вместо этого они откладывают выделение полей до ссылки на поле. Поля выделяются согласно текущему значению FS! (d.c.) Такое поведение может быть трудно диагнозируемым. Следующий пример иллюстрирует разницу между этими двумя методами. (Команда sed печатает первую строку из `/etc/passwd'. Утилита sed является "поточным редактором". Ее поведение также определяется стандартом POSIX.)

sed 1q /etc/passwd -- awk '- FS = ":" ; 

print $1 ""'

будет обычно печатать

root on an incorrect implementation of awk

в то время как  gawk напечатает что-нибудь вроде

root:nSijPlPhZZwgE:0:0:Root:/:

В следующей таблице указывается, как выделяются поля на основании значения переменной FS. (`==' означает "равно следующему.") FS == " " Поля разделяются белыми пробелами. Ведущие и завершающие белые пробелы игнорируются. Это же делается по умолчанию.

FS == любой другой отдельный символ. Поля разделяются каждым вхождением этого символа. Кратные последовательные вхождения ограничивают пустые поля, так же как ведущее и завершающее запись вхождения. Этот символ может также быть метасимволом регулярного выражения; его представление не нуждается в управляющей последовательности.

FS == регулярное выражение. Поля разделяются вхождениями символов, которые соответствуют регулярному выражению. Ведущее и завершающее вхождения отделяют пустые поля. FS == "" . Каждый отдельный символ в записи становится отдельным полем.

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



Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
 





Copyright © 2005-2016 Project.Net.Ru