Re: sed ; in \n ersetzen
"Gebhard Dettmar" <gebhard.dettmar@student.hu-berlin.de> writes:
> Daniel Golesny scribbled on Tuesday, May 18, 2004 12:51 PM
>
>> Christoph Bier wrote:
>>> Daniel Golesny schrieb am 18.05.2004 11:50
>>
>>>> das funktionieren, tuts aber nicht.
>>>
>>> Bei mir schon.
>>>
>>>> Er ersetzt es in '\n' und nicht in den Umbruch.
>>>> \\n oder bei sed mit " ging auch nicht.
>>>> Ich weiss nicht weiter.
>>>
>>> $ sed --version
>>> GNU sed Version 4.0.9 [...]
>>
>> ok, dann bin ich nicht blöd, sondern meine Version alt GNU sed
>> version 3.02
>>
>> habe halt Woody ...
> kapiere ich nicht. Das muss gehen, seit es sed gibt. In sed gibt's
> doch sogar Multi-line-commands (N,D,P)
> ???
Es geht mit jedem sed, wenn man statt der Zeichenfolge Backslash-n
tatsächlich ein Newline-Zeichen schreibt, welches man seinerseits mit
einem Backslash quoten muß. Dies ist entweder zu bewerkstelligen, indem
man das Newline-Zeichen in einer Variablen speichert:
nl='
'
echo 'a;b;c' | sed "s/;/\\$nl/g"
Oder man schreibt es wirklich da, wo man es haben will:
echo 'a;b;c' | sed 's/;/\
/g'
Martin
--
,--. Martin Dickopp, Dresden, Germany ,= ,-_-. =.
/ ,- ) http://www.zero-based.org/ ((_/)o o(\_))
\ `-' `-'(. .)`-'
`-. Debian, a variant of the GNU operating system. \_/
Reply to: