Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : mitrohin a.s.                        2:5020/400     14 Sep 2006  09:35:45
 To : Eugene Grosbein
 Subject : Re: sed
 -------------------------------------------------------------------------------- 
 
 On Wed, Sep 13, 2006 at 11:03:28PM +0400, Eugene Grosbein wrote:
 
 > 13 сен 2006, среда, в 18:35 KRAST, mitrohin a.s. написал(а):
 > 
 >  mas> можно ли подклеить sed-ом несколько строк в одну?
 >  mas> printf '[a\nb\nc\n]' | sed ??? -> [abc]
 > 
 > printf '[a\nb\nc\n]' | sed '{N; N; N; s/\n//g; }'
 > 
 
 это замечательно работает, если заранее известно кол-во склеиваемых 
 строк. надо было прямо задачу поставить, чтобы условия были полными, 
 поэтому еще раз.
 
 ldif формат подается на sed, хочется вырезать значение поля одним
 sed-ом. ldif имеет вид:
 
 ...
 attribute1: value1
 attribute2:: 0JTQuNCy0LDQvdC+0LIt0J/Rg9C/0LrQuNC9INCS0LDRgdC40YH
  Rg9Cw0LvQuNC5INCU0L7RgNC80LjQtNC+0L3RgtC+0LLQuNGHCg==
 attribute3: value3
 ...
 
 где каждая строка - ``attribute: value'' или 
 ``attribute:: <конвертнутое в utf-8 и завернутое в base64 value>''.
 если на одной строке данные не помещаются - они переносятся на следующую
 с добавлением пробела в качестве первого символа.
 
 задача - выдернуть значение атрибута 2. сейчас это сделано так.
 
 ldapsearch <...> | 
   sed -n '/^attribute2:: /,/^ /s/^[^ ]\{0,\} //p' | tr -d '\n' |
    recode utf-8/b64..
 
 и imho tr тут лишний.
 
 /swp
 --- ifmail v.2.15dev5.3
  * Origin: BSPU InterNetNews site (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: sed   mitrohin a.s.   14 Sep 2006 09:35:45 
Архивное /ru.unix.bsd/3499ce5b0067.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional