Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Feb 2004 16:40:04 -0800
From:      Chris Pressey <cpressey@catseye.mine.nu>
To:        mathias@haas.se
Cc:        questions@freebsd.org
Subject:   Re: Shell scripting woes
Message-ID:  <20040224164004.11f27d1d.cpressey@catseye.mine.nu>
In-Reply-To: <51804.193.14.163.194.1077641809.squirrel@mail.haas.se>
References:  <51804.193.14.163.194.1077641809.squirrel@mail.haas.se>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 24 Feb 2004 17:56:49 +0100 (CET)
mathias@haas.se wrote:

> Hello guys! I have two questions about shellscripts:

Your second question seems to have been addressed, so here's something
for your first question...

> 1) I have a backup job that 'tar's a lot of files and currently I
> redirect all output of the job to a log. Tar unfortunately lists all
> directories that it goes through, even if nothing is 'tar'ed in those
> directories. So my logfile contains all my directories. I want to
> filter out all lines in my tar-log that ends with slash ("/") since
> those are directories. I want to sort of do an inverse grep on the
> last character when tarring. Like: tar -cvf myback.tar |grep -v "all
> lines that end with slash" > log.txt. All files that are backed up
> contain the whole directory path (that's how I want it) - so I can't
> simply do a reverse grep for the slash-char. Maybe you could do
> something with awk? I'm a total rookie with awk, so I'm lost there...

Try

	tar -cvf myback.tar | grep -v '/$'

The $ in the grep pattern indicates "end of line".

-Chris



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