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








Книги по Linux (с отзывами читателей)

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

На главную -> MyLDP -> Электронные книги по ОС Linux
Руководство по Bash для начинающих
Назад Глава 5: Потоковый редактор GNU sed Вперед

Подводим итог

Потоковый редактор sed является мощным инструментом, работающим из командной строки, с помощью которого можно обрабатывать потоки данных: он может считывать входные данные из конвейера. Это позволяет его использовать в неинтерактивном режиме.

В редакторе sed используются команды, похожие на команды редактора vi; также можно пользоваться регулярными выражениями

Редактор sed может читать команды из командной строки или из скрипта. Он часто используется для выполнения действий по поиску и замене строк, содержащих шаблон.

Упражнения

Эти упражнения предназначены для дальнейшей демонстрации того, что может делать sed.

  1. Выдайте список файлов, находящихся в директории scripts, которые оканчиваются на ".sh". Имейте в виду, что вам, возможно, придется использовать команду unalias ls. Поместите результат во временный файл.
  2. Создайте список файлов, имеющихся в директории /usr/bin, в которых в качестве второго символа используется буква "а". Поместите результат во временный файл.
  3. Удалите первые три строки каждого временного файла.
  4. Выдайте в стандартный вывод только те строки, в которых есть шаблон "an".
  5. Создайте файл с командами sed, выполняющими два предыдущих задания. Добавьте в этот файл еще одну команду, которая добавляет строку, например, "*** This might have something to do with man and man pages ***" перед каждым вхождением строки "man". Проверьте результаты.
  6. Создайте длинный список файлов, использовав в качестве входа корневой директорий "/ ". Создайте файл с командами sed, которые проверяют, является ли файл символической ссылкой или обычным файлом. Если файл является символической ссылкой, поставьте перед ним строку "--This is a symlink--" ("--Это символическая ссылка--"). Если файл является обычным файлом, добавьте в ту же самую строку, например, комментарий "<--- this is a plain file" ("<--- это обычный файл").
  7. Создайте скрипт, показывающий в файле строки, содержащие пробелы в конце строки. В этом скрипте должен использоваться sed и выдаваться понятный пользователям результат.

Предыдущий раздел: Оглавление Следующий раздел:
Неинтерактивное редактирование   Глава 6