Mail Archives: cygwin/2002/09/07/12:07:10
Igor Pechtchanski wrote:
>>> On Thu, 5 Sep 2002, Max Bowsher wrote:
>>>
>>>> I had an idea:
>>>> sedpat6='s,\(-m [0-7]*\)6,\17,g'
>>>> sedpat4='s,\(-m [0-7]*\)4,\15,g'
>>>> sed -e "$sedpat4" -e "$sedpat4" -e "$sedpat4" -e "$sedpat6" -e
>>>> "$sedpat6" -e "$sedpat6"
>>>>
>>>> but can anyone show me a way without repeating each pattern 3
>>>> times?
> Okay, then... There is a pure sed solution that doesn't use
> repetition. It's peculiar, and involves a loop. In this particular
> case, you are probably better off just repeating the patterns 3
> times. But I'm posting it just to show that it can be done. Call me
> vain. :-D
>
> Okay, here goes:
>
> sed 's/$/0^A1^A2^B3^C4^E5^E6^G7^G/;:a;s/\(-m
>
[0-7^A-^G]*\)\([0-7]\)\(.*\2\)\(.\)/\1\4\3\4/;ta;s/.\{16\}$//;y/^A^B^C^E^G/12357
/'
Thankyou :-) You clearly qualify as a sed wizard, 1st class!
However, in analysing your solution, I learnt something new about sed - namely,
the t command.
So, I can use the simpler script:
':a;s/\(-m [0-7]*\)6/\17/;s/\(-m [0-7]*\)4/\15/;ta'
Now, to build that into libtool...
Thanks for the help!
Max.
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -