Date: Wed, 18 Aug 2010 17:14:50 +0200 From: "Dr. A. Haakh" <bugReporter@Haakh.de> To: "Jack L. Stone" <jacks@sage-american.com> Cc: freebsd-questions@freebsd.org Subject: Re: Extracting a variable listing Message-ID: <4C6BF8EA.3020406@Haakh.de> In-Reply-To: <3.0.1.32.20100818084231.00ecef30@sage-american.com> References: <3.0.1.32.20100818084231.00ecef30@sage-american.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Jack L. Stone schrieb: > Sorry to return to the trough again for script help, but find excellent > answers here when all else fails, and I am not very good at it. > > Trying to develop a script (non-bash) that will extract a variable list of > content on a daily basis so I can add it to a master list. Once I have > this, I can do the rest of the scripting needed. > > Here's an example of the need. > > The content I need will always fall beneath a row of pound signs, and there > is content above that row I don't want, like this: > > bunch of rows I don't need here > ############################### <--- the top of stuff needed > row1 > row2 > row3 > row4 > etc, etc.... > > So, I need a way to pull out the rows (which vary daily) beneath the pound > row and place it in a new temp file that I can "cat >>" into a master file. > > Appreciate your kind help once again.... (beers on me!) > > All the best! > Jack > > (^_^) > Happy trails, > Jack L. Stone > > System Admin > Sage-america awk is your friend .-) this script does exactly what you need extract.awk --------------- /^#####+$/ { print $0; getline; print ">>>>>",$0 while (match($0, "^[[:print:]]+$")) { print $0; getline; } } --------------- You can still adjust the pattern in match to suit your need. invoke it with awk -f extract.awk yourfile Andreas
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4C6BF8EA.3020406>