The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Памятка по командам SED
   a \text - Добавить "text" после указанной строки (вывести), потом считать следующую. 
   b label - Перейти на метку, устанавливаемую, с помощью функции ":" , если label пуст, то перейти в конец скрипта. 
   c \text - Удалить pattern space и вывести "text" на output . 
   d - Удалить pattern space . 
   D - Удалить pattern space до вставленной newline . 
   g - Заместить содержимое pattern space содержимым буфера hold space . 
   G - Добавить к содержимому pattern space содержимое буфера hold space . 
   h - Заместить содержимое буфера hold space на содержимое pattern space . 
   H - Добавить к содержимому буфера hold space содержимое pattern space . 
   i \text - Вывести текст на output перед указанной строкой. 
   n - Вывести pattern space на output и считать следующую строку. 
   N - Добавить следующую строку к pattern space , разделяя строки вставленным newline . 
   p - Скопировать pattern space на output . 
   P - Скопировать pattern space до первой вставленной newline на output . 
   q - Переход на конец input . Вывести указанную строку, (если нет флага -n ) и завершить работу SED 
   r rfile - Читать содержимое rfile и вывести его на output прежде чтения следующей строки. 
   t label - Перейти на метку, устанавливаемую с помощью функции ":" , если для этой строки была 
        осуществлена замена с помощью функции "s" . Флаг осуществления замены восстанавливается 
        при чтении следующей строки или при выполнении функции "s" . 
   w wfile - Добавить pattern space к концу файла wfile . (Максимально можно использовать до 10 открытых файлов.) 
   x - Поменять местами содержимое pattern space и буфера hold space . 
   ! func - Применять функцию func (или группу функций в {} ) к стокам НЕ попадающим в указанные адреса. 
   : label - Устанавливает метку для перехода по "b" и "t" командам. 
   = - Выводит номер строки на output как строку. 
   { - Выполняет функции до "}" , только когда выбрано pattern space . Группировка функций. 
   # - Комментарий. 
   "#n" в скрипте равносильно установке флага -n 


Примеры:

   Выдираем ссылки из документа
      cat index.html | sed -n 'H;${x;s/\n//g;s/ [hH][rR][eE][fF]=/\n/g;p}' | 
      # делаем ссылки в начале строки
      sed 's/[ >].*//;s/"//g'# обрубаем концы и легкая косметика

   Аналог dos2unix
      $ sed -i 's/\r//' file

   Убрать переводы строк в тексте
      $ sed -ni 'H;${x;s/\n//g;p}' file
 
20.04.2005 , Автор: madskull , Источник: http://madskull.narod.ru/tips/sed.h...
Ключи: sed
Раздел:    Корень / Программисту и web-разработчику / Shell / Готовые скрипты

 Добавить комментарий
Имя:
E-Mail:
Заголовок:
Текст:




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру