l i n u x - u s e r s - g r o u p - o f - d a v i s
Next Meeting:
July 7: Social gathering
Next Installfest:
Latest News:
Jun. 14: June LUGOD meeting cancelled
Page last updated:
2010 Dec 04 16:32

The following is an archive of a post made to our 'vox-tech mailing list' by one of its subscribers.

Report this post as spam:

(Enter your email address)
Re: [vox-tech] Idea for 'tee' -- shut up already!
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [vox-tech] Idea for 'tee' -- shut up already!

Nick hack!

I like to do this:

    cat hugefile.log | grep whatever | cut -f 1,2,3 > output.txt &
    tail -f output.txt

You'll get the same effect, but when you hit Control-c you'll just
kill the tail command. The pipeline building output.txt keeps running
in the background. But if you end up viewing the entire output, tail
won't tell you when the pipeline exits, it'll just sit there waiting
for some other process to append to output.txt - you have to exit the
tail command. Great for log files, e.g.:

    tail -f access.log | grep Safari

When experimenting to find the right parameters for grep/egrep/cut, I
usually use |more or |less to preview the grep/cut operation and then
re-run with |tee. But after you asked this, I went looking and sure
enough, less has a command for this. From the man page:

s filename

  Save the  input to  a file. This only works if the input is a
  pipe, not an ordinary file.

So you'd run

    cat hugefile.log | grep whatever | cut -f 1,2,3 | less

Check the output, then type "s" and "output.txt" when you want to stop
viewing it.


On Fri, Dec 3, 2010 at 4:41 PM, Brian Lavender <brian@brie.com> wrote:
> On Fri, Dec 03, 2010 at 02:13:15PM -0800, Bill Kendrick wrote:
> >
> > So I'm grepping & cut'ing a huge log file (6.4 million lines)
> > and made the mistake of deciding to pipe it through "tee" to
> > watch for a while.  I forgot to do this from within a "screen"
> > session, so I'm kind of stuck staring at it in a terminal.  *sigh* :)
> >
> > I don't want to watch any more, and wish I could do something like,
> > I dunno maybe like this...?
> >
> >
> >   $ cat hugefile.log | grep whatever | cut -f 1,2,3 | tee output.txt
> >   {huge dump of data}
> Signal handler perhaps in a shell script that toggles output to stdout?
> http://linuxcommand.org/wss0160.php
> --
> Brian Lavender
> http://www.brie.com/brian/
> "Program testing can be used to show the presence of bugs, but never to
> show their absence!"
> Professor Edsger Dijkstra
> 1972 Turing award recipient
> _______________________________________________
> vox-tech mailing list
> vox-tech@lists.lugod.org
> http://lists.lugod.org/mailman/listinfo/vox-tech
vox-tech mailing list

LUGOD Group on LinkedIn
Sign up for LUGOD event announcements
Your email address:
LUGOD Group on Facebook
'Like' LUGOD on Facebook:

Hosting provided by:
Sunset Systems
Sunset Systems offers preconfigured Linux systems, remote system administration and custom software development.

LUGOD: Linux Users' Group of Davis
PO Box 2082, Davis, CA 95617
Contact Us

LUGOD is a 501(c)7 non-profit organization
based in Davis, California
and serving the Sacramento area.
"Linux" is a trademark of Linus Torvalds.

Sponsored in part by:
Sunset Systems
Who graciously hosts our website & mailing lists!