Clever trick sticking `tr` in there! I don't think sed can handle newlines, AFAIK. I do generally feel more comfortable with sed than AWK since it's a simple regex replace -- sneaking in `tr` is a good trick to know. Thanks, Bill!
-Mark On Thu, 21 Apr 2005, Bill Kendrick wrote: > On Thu, Apr 21, 2005 at 11:20:39PM -0700, Dylan Beaudette wrote: > > Hi everyone, > > > > this might be a really simple question, but : > > > > > > i have a text file with multiple-line records in a format like this: > > > > ---------------------------- > > easting: 661674.9375 > > northing: 4035004.0000 > > elevation: 968.8617 > > distance along surface: 15.9540 > > > > easting: 661683.7500 > > northing: 4034946.7500 > > elevation: 961.4768 > > distance along surface: 58.4077 > > ----------------------------- > > A silly way I can think of is to first convert all EOLs to some > special character (say, a "|"), then convert all double-|s to single EOLs. > > Something like this in a shell: > > cat foo.txt | tr \\n \| | sed s/\|\|/\\n/g > > If I tack a "| sed s/\\t//g" at the end and run your above input, I get this: > > easting:661674.9375|northing:4035004.0000|elevation:968.8617|distance along > surface:15.9540 > easting:661683.7500|northing:4034946.7500|elevation:961.4768|distance along > surface:58.4077| > > Which seems a bit more reasonable to parse. If the values are always in > the same place, hacking at it with 'cut' could even work: > > ... | tr \| : | cut -d ":" -f 2,4,6,8 > > Results in: > > 661674.9375:4035004.0000:968.8617:15.9540 > 661683.7500:4034946.7500:961.4768:58.4077 > > > :) > > > > Of course, the smarter folks around here will come up with a more > elegant solution, but I love trying to cram crazy problems into the > basic shell apps. :) > > Good luck! I hope I helped SOMEwhat! ;) > > > -- > -bill! > [EMAIL PROTECTED] Tonight's Forecast: Dark. Continued darkness > http://newbreedsoftware.com/ until widely scattered light in the morning. > _______________________________________________ > vox-tech mailing list > [email protected] > http://lists.lugod.org/mailman/listinfo/vox-tech > -- Mark K. Kim AIM: markus kimius Homepage: http://www.cbreak.org/ Xanga: http://www.xanga.com/vindaci Friendster: http://www.friendster.com/user.php?uid=13046 PGP key fingerprint: 7324 BACA 53AD E504 A76E 5167 6822 94F0 F298 5DCE PGP key available on the homepage _______________________________________________ vox-tech mailing list [email protected] http://lists.lugod.org/mailman/listinfo/vox-tech
