Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 28 Jun 2007 12:55:10 +0200
From:      Olivier Regnier <oregnier@oregnier.net>
To:        Andrew Pantyukhin <infofarmer@FreeBSD.org>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Problem with sed to insert a new line
Message-ID:  <4683938E.30708@oregnier.net>
In-Reply-To: <cb5206420706280336v204c8caava4c6259a5397fbf6@mail.gmail.com>
References:  <46838E41.4060902@oregnier.net> <cb5206420706280336v204c8caava4c6259a5397fbf6@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Andrew Pantyukhin a écrit :
> On 6/28/07, Olivier Regnier <oregnier@oregnier.net> wrote:
>> Hi everyone,
>>
>> I have a file called "test" with the following lines:
>> ###
>> a
>> b
>>
>> d
>> e
>> f
>> ###
>>
>> With sed, i want to insert the "c" letter after "b" letter. Logically
>> simple, but not for me.
>>
>> Here is my command : # sed -i.old -e "4i\c"
>>
>> I have this message : sed: 1: "4i\c": extra characters after \ at the
>> end of i command
>
> AFAIK, with our sed you can only do that with multiline
> command:
> % sed -i.old -e "4i\\<press enter>
> c" test
>
> The backslash is doubled, because shells interpret
> backslash-newline as a space. With GNU sed it's
> much easier.
> _______________________________________________
> freebsd-questions@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> To unsubscribe, send any mail to 
> "freebsd-questions-unsubscribe@freebsd.org"
Hello,

Ok with your command :
% sed -i.old -e "4i\\<press enter>
c" test
It's good but if i want to use my command in a shell script ? It's 
possible or not :)

Thank you :)

Olivier.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4683938E.30708>