Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com X-Authentication-Warning: slinky.cs.nyu.edu: pechtcha owned process doing -bs Date: Sun, 8 Sep 2002 11:25:06 -0400 (EDT) From: Igor Pechtchanski Reply-To: cygwin AT cygwin DOT com To: Max Bowsher cc: cygwin AT cygwin DOT com Subject: Re: Calling all sed wizards! Need a little help with possible fix: Subtle permissions bug in interaction between Makefiles & libtool (Cygwin-specific) In-Reply-To: <002401c25688$d1c69a70$0100a8c0@wdg.uk.ibm.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII On Sat, 7 Sep 2002, Max Bowsher wrote: > 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. D'oh! *smacks head* I've learned something new from your solution, too: don't ever overcomplicate :-D I can't believe I haven't tried that one first... Igor -- http://cs.nyu.edu/~pechtcha/ |\ _,,,---,,_ pechtcha AT cs DOT nyu DOT edu ZZZzz /,`.-'`' -. ;-;;,_ igor AT watson DOT ibm DOT com |,4- ) )-,_. ,\ ( `'-' Igor Pechtchanski '---''(_/--' `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-. Meow! It took the computational power of three Commodore 64s to fly to the moon. It takes a 486 to run Windows 95. Something is wrong here. -- SC sig file -- 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/