Наши партнеры

UnixForum





Библиотека сайта rus-linux.net

Утилиты GNU для обработки текста. Часть 3. Продвинутые инструменты

Оригинал: GNU text processing overview, part 3: Advanced tools
Автор: Russell James
Дата публикации: 5 ноября 2013 года
Перевод: А. Кривошей
Дата перевода: январь 2014 г.

Emacs

GNU Emacs - это текстовый редактор, как Nano, только намного мощнее. Он имеет модульную стркутуру и позволяет расширять свои возможности с помощью плагинов до такой степени, что его можно назвать интегрированной средой разработки (IDE). Чтобы запустить Emacs, введите в командной строке:

$ emacs

Стартовая страница Emacs содержит ссылки на ресурсы для углубленного изучения возможностей программы.

Материалы для углубленного изучения:

How to Use Emacs
Basic Emacs Editor Commands
GNU Emacs FAQ
GNU Emacs Manual
Emacs Wiki
GNU Emacs Home Page

Groff

GNU Troff, или Groff - это программа верстки, которая использует для подготовки документов к печати язык разметки troff. Для вызова программы введите в командной строке:

$ groff

Материалы для углубленного изучения:

Groff Tutorial
Groff Command Examples to Create Formatted Document
Groff Manual
Groff Home Page

Texinfo

Texinfo - это официальный формат документации системы GNU. Также это программа, которая позволяет конвертировать документы одного из поддерживаемых форматов (html, pdf, info и т.д.) в любой другой поддерживаемый формат. Это значит, что можно один раз отредактировать исходный документ, а потом опубликовать его в нескольких форматах.

Материалы для углубленного изучения:

What's GNU: Texinfo
Texinfo Manual
Making Lists & Tables with Texinfo
Texinfo Home Page

sed

GNU sed - это потоковый редактор, который получает на ввод текстовый документ (или набор документов) и выполняет над ним некоторые заданные операции по редактированию. Он наиболее широко используется для производства множественных подстановок. Например, чтобы сменить каждое слово "wildebeast" в документе на "gnu", необходимо ввести следующую команду:

sed - это мощное средство для обработки текстов, и поддерживает множество других функций.

$ sed 's/wildebeast/gnu/g' < old > new

Материалы для углубленного изучения:

Sed - An Introduction and Tutorial
sed One-Liners
Famous sed One-Liners Explained
The sed FAQ
sed Man Page
GNU sed User's Manual
GNU sed Home Page

gawk

GNU awk (gawk) - это язык обработки текста. Он похож на sed, но еще более мощный и гибкий. Пример: чтобы найти и вывести на экран каждую строку из документа "gnubie.txt, содержащую слово "wildebeast", необходимо ввести:

$ awk '/wildebeast/ { print $0 }' gnubie.txt

Конечно, функциональность gawk этим не ограничивается.

Материалы для углубленного изучения:

An Awk Primer
awk Tutorial
awk One-Liners
Famous Awk One-Liners Explained
awk Man Page
GAWK: Effective AWK Programming: A User's Guide for GNU Awk
Awk -- A Pattern Scanning and Processing Language
Gawk Home Page

Bash

Bash - это официальная командная оболочка GNU. Она объединяет в себе интерфейс командной строки и интерпретатор командного языка с богатыми возможностями. Функции расширения параметра Bash часто могут быть полезны в обработке текста, хотя они используются не слишком часто.

Материалы для углубленного изучения:

Bash Parameter Expansion
Introduction to the Command Line
Advanced Bash Scripting Guide
Bash Man Page
Bash Reference Manual
Bash Home Page

Регулярные выражения

Регулярные выражения - это строки символов, представляющие текст в документе. Они могут быть литералом, другими словами регулярное выражение "GNU" может представлять собой текст "GNU", либо может быть набором символов. Символ "*" представляет ноль или более экземпляров заданного символа. Регулярные выражения наиболее часто используются для поиска или подстановки текста по образцу.

Материалы для углубленного изучения:

Regular Expressions User Guide
Regular Expressions Tutorial