Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
☁️ Виртуальные серверы от 95 ₽

🖥 Хостинг сайтов PHP от 25 ₽

💰 Скидка 15% по промокоду CITFORUM на первый платёж!

Виртуальные VPS серверы в РФ и ЕС

Dedicated серверы в РФ и ЕС

По промокоду CITFORUM скидка 30% на заказ VPS\VDS

VPS/VDS серверы. 30 локаций на выбор

Серверы VPS/VDS с большим диском

Хорошие условия для реселлеров

4VPS.SU - VPS в 17-ти странах

2Gbit/s безлимит

Современное железо!

10.21. Ввод

Наиболее общим способом подачи ввода программе awk является указание в командной строке имен вводных файлов. Но существуют и другие способы. Они описываются в этом подразделе.

10.21.1. Файлы и каналы

Вы можете поместить вводимые данные в файл, указать awkdata и затем выполнить:

	awk 'программа' awkdata 

Если не указано имя файла, то awk читает из стандартного файла ввода. Например, egrep выбирает вводные строки, содержащие указанное регулярное выражение, которое может сделать это быстрее, чем awk, т.к. выполняет только это действие. И мы можем вызвать кроме того канал:

	egrep 'Asia' countries | awk '...'
egrep быстро находит строки, содержащие "Asia" и затем направляет их программе awk для последующей обработки.

10.21.2. Разделители ввода

Если используется значение по умолчанию для разделителей полей FS, то поля вводного файла разделяются символами пробела или табуляции и лидирующие символы пробелов отбрасываются, так что каждая из этих строк имеет следующее первое поле:

           поле 1 поле 2
        поле 1
     поле 1

Если в качестве разделителя полей используется символ табуляции, то лидирующие пробелы не отбрасываются.

Разделитель поля может быть установлен при помощи регулярного выражения при присваивоении значения встроенной переменной FS.

Например:

	BEGIN { FS = ",[\t] * | ([\t]+" }
переделывает разделитель поля каждой строки в запятую и следующий за ней символ новой строки или табуляции, и каждую строку с символами пустой строки или табуляции без запятой. FS может быть установлен в командной строке с аргументом -F:

Пример.

	awk -F ' (, [\t]*) | ([\t]+)' '...'
а выполняет те же действия, что и в предыдущем примере.

Регулярные выражения используются как разделители поля для поиска самых длинных строк (как в sub()), но не нулевых строк.

Назад | Содержание | Вперед

Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

ATLEX Выделенные серверы: в Европе / в России.

Виртуальные серверы: в Европе / в России.

Партнерская программа

VPS с гибкой конфигурацией: за 1€

Мощные выделенные сервера: от 25€

Собственный Дата-Центр
Поддержка 24/7

Виртуальные серверы VPS/VDS в России, Европе и США!

Промокод citforum - скидка 10% на заказ сервера!

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 7861149
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...