Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 2 Nov 2008 00:54:15 -0400
From:      Sahil Tandon <sahil@tandon.net>
To:        freebsd-questions@freebsd.org
Subject:   Re: OT: Shell Script using Awk
Message-ID:  <20081102045414.GA13745@shepherd>
In-Reply-To: <2daa8b4e0811011821q210ae3a5j8f612a0fc79e8844@mail.gmail.com>
References:  <2daa8b4e0811011821q210ae3a5j8f612a0fc79e8844@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
David Allen <the.real.david.allen@gmail.com> wrote:

> My apologies for asking on this list, but I'm stuck without Perl and need
> to use awk to generate a report.
> 
> I'm working with a large data set spread across multiple files, but to
> keep things simple, say I have A Very Long String that containing records,
> each delimited by a single space.  I need to print those records in
> columnar format, but with only 7 columns per line:
> 
> record1  record2  record3  record4  record5  record6  record7
> record08 record09 record10 record11 record12 record13 record14
> ...

A small sh script:

#!/bin/sh
awk ' {
for (i=1; i<=NF; i++) {
 printf("%s ", $i)
 if (i % 7 == 0) { printf("\n") }
}
if (NF % 7 != 0) { printf("\n") }
} ' input 

-- 
Sahil Tandon <sahil@tandon.net>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20081102045414.GA13745>