Using sed to simply edit items in place usually works like this:
sed -i 's,OLDSTRING,NEWSTRING,g;s,OLDSTRING2,NEWSTRIN2G,g' FILENAME
The semicolon separates search/replace strings and the g makes it replace
all occurrences.
If the text to be replaced has comas (,) you can use / as a delimiter such
as |,#,etc.
-- JD Austin
Voice: 480.269.4335 (480 2MY Geek)
jd@twingeckos.com
On Tue, Jul 2, 2013 at 11:18 AM, Dazed_75 <
lthielster@gmail.com> wrote:
> Thanks guys. I must not be doing what you suggest correctly or maybe I
> did not describe the problem well (to edit the chosen lines in place in the
> source file). In any case, after experimenting on a copy of the file
> without success I went ahead and did the edits manually to get the job
> done. I hope neither of you spent too much time on it but I do appreciate
> the effort.
>
>
> On Tue, Jul 2, 2013 at 7:08 AM, der.hans <PLUGd@lufthans.com> wrote:
>
>> Am 02. Jul, 2013 schwätzte Dazed_75 so:
>>
>> moin moin,
>>
>>
>> I have some C code with lines that look like:
>>> stuff1; stuff2; spPtr+=stuff3; maybesomestuff4
>>>
>>> I can find only the lines of interest using grep spPtr+=foo.c but I
>>> wondered if I could easily use sed to convert those lines to
>>> stuff1; spPtr+=stuff3; stuff2; maybesomestuff4
>>>
>>> so basically with ; as a delimiter, swapping group 2 and 3 but only for
>>> those lines containing "spPtr+="
>>>
>>> Any ideas?
>>>
>>
>> $ echo "1; 2; 3; 4;" | sed -re 's/^([^;]+;)([^;]+;)([^;]+;)/\**1\3\2/'
>> 1; 3; 2; 4;
>> $
>>
>> Combining the 3 capture groups into one is left as an exercise for the
>> reader :).
>>
>> Obviously, if any of the fields contain a ;, then that match won't do what
>> you're wanting on that line.
>>
>> ciao,
>>
>> der.hans
>> --
>> # http://www.LuftHans.com/ http://www.LuftHans.com/**Classes/<http://www.LuftHans.com/Classes/>
>> # Wer bereit ist, grundlegende Freiheiten aufzugeben, um sich
>> # kurzfristige Sicherheit zu verschaffen, der hat weder Freiheit
>> # noch Sicherheit verdient. -- Benjamin Franklin (1706 - 1790)
>> ---------------------------------------------------
>> PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org
>> To subscribe, unsubscribe, or to change your mail settings:
>> http://lists.phxlinux.org/mailman/listinfo/plug-discuss
>>
>
>
>
> --
> Dazed_75 a.k.a. Larry
>
> Please protect my address like I protect yours. When sending messages to
> multiple recipients, use the BCC: (Blind carbon copy). Remove addresses
> from a forwarded message body before clicking Send.
>
> ---------------------------------------------------
> PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org
> To subscribe, unsubscribe, or to change your mail settings:
> http://lists.phxlinux.org/mailman/listinfo/plug-discuss
>
---------------------------------------------------
PLUG-discuss mailing list -
PLUG-discuss@lists.phxlinux.org
To subscribe, unsubscribe, or to change your mail settings:
http://lists.phxlinux.org/mailman/listinfo/plug-discuss