Школа № 43 Нижнего Новгорода
Меню сайта
 
Главная страница

О школе

Учителя

Для учителей

Ученики

Общественная жизнь

Фотоальбом

Общение

Для учеников

Статьи

Единый экзамен

Валеология

Библиотека

Посетителям сайта

Страничка лаборанта

Web-мастерам

 

Предыдущая Следующая

процесс.

 

Рассмотрим очень формальную задачу. Допустим, в

файле note сохранен текст записки:

 
Милая Лена!
Ты не откажешься поужинать со мной в ночь с пятницы на воскресенье?
- Максим

 

Если жизнь пошла по диагонали, и планы резко изменились (и мы отдаем

себе отчет, как именно), можно открыть файл с этим текстом в

текстовом редакторе, например, vi, и издать команду:

 
:s/Лена/Ира/g

 

Текст (предсказуемо) приобретет вид:

 
Милая Ира!
Ты не откажешься поужинать со мной в ночь с пятницы на воскресенье?
- Максим

 

Однако, то же самое действие можно выполнить и "без редактора",

а точнее, без интерактивного редактора, с помощью редактора

потокового. Стандартный потоковый редактор называется sed, и синтакис

его команд схож с синтаксисом командного режима стандартного

интерактивного редактора vi, команда при этом издается

непосредственно из командной строки:

 
$sed -n 's/Лена/Таня/g' note

 

Если у нас подготовлен не один файл, а множество (например, note.1,

note.2, note.3), и нужно внести в них единообразные замены (и ничего

не пропустить, и нигде не ошибиться), мы обойдемся также всего одной

командой.

 
$sed -n 's/Лена/Вера/g' note.*

 

Если файлов будет тысяча, а требуемые изменения будут посложнее, нам,

скорее всего, понадобится опять-таки всего одна команда (хотя,

возможно, и потребуется серьезное изучение синтаксиса). Это

называется потоковым редактированием, и оно интенсивно

применяется, например, для наложения "заплаток" на

исходные тексты программ (однако, как было продемонстрировано, может

использоваться и для обработки текста на естественном языке).

 

2.6 Автоматизированная обработка текстов

 

UNIX был во многом "рожден для обработки

текстов" (прежде всего, это была система для программистов, а

программы -- с чего мы начали сегодняшнюю лекцию -- это

тексты). Набор служебных программ (утилит) современных стандартных ОС

продолжает эту традицию, и в их составе можно найти десятки программ,

ориентированных на работу с текстом. Многие из них (но не все)

являются построчно-ориентированными, то есть текст понимается как

последовательность строк. Подробное обсуждение этих возможностей см.

в "лекции" 6 "Строка длиною в жизнь".

 

2.7 Ресурсы

 

Дистрибутив любой современной стандартной ОС

(включая свободные) содержит все упомянутые программы. Многие из них

портированы (перенесены) и в альтернативные ОС.

 

Для Microsoft Windows рекомендуется установка

пакета Cygwin, содержащего утилиты GNU (включая предназначенные для

работы с текстом) и некоторые другие программы (включая редактор

vim), позволяющие организовать стандартную рабочую среду. Следует

учесть, что при работе в версиях MS Windows, основанных на MS-DOS (MS

Windows 95/98/Me), у многих программ возникают сложности из-за

отсутствия контроля за правами доступа к файлам и каталогам (версии,

основанные на NT -- MS Windows NT/00/XP, лишены этого


Предыдущая Следующая
 
Хостинг от uCoz