public inbox for gentoo-user@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Walter Dnes" <waltdnes@waltdnes.org>
To: Gentoo Users List <gentoo-user@lists.gentoo.org>
Subject: [gentoo-user] [OT] tar exclude syntax tip
Date: Wed, 5 May 2021 09:33:58 -0400	[thread overview]
Message-ID: <YJKexsxwztZx2zz3@waltdnes.org> (raw)

  tar version

####################################################
tar (GNU tar) 1.34
Copyright (C) 2021 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by John Gilmore and Jay Fenlason.
####################################################

  I'm passing on this solution to help others avoid my frustration and
wasted time.  If you've done "RTFM" on tar, you'll find out that "TFM"
is broken or out-of-date or whatever, re: "--exclude=PATTERN".  I'm
fighting the urge to turn this into a rant.  Here's my situation...

  I either log in as root or "su -" and then "cd /home".  I want to tar
up /home/waltdnes, and transfer it to another machine.  While I'm at it,
I want to exlude directory /home/waltdnes/.cache/ and all *.xz files in
directory /home/waltdnes/pm/  The "--exclude=" never worked.  After much
hair pulling, I was ready to give up on the exclude, and simply transfer
all the unnecessary garbage.

  Then "I asked Mr. Google".  It seems that I wasn't the only person
running into problems.  After some searching, I finally found a syntax
that works...

####################################################
#!/bin/bash
export GZIP=-9
tar cvzf wd.tgz --exclude ".cache/*" --exclude "pm/*.xz" waltdnes
####################################################

Notes...

1) This is obviously not in line with the man page.  Specifically,
"--exclude" is followed by one space, not an equals sign.

2) ***THERE MUST BE EXACTLY ONE SPACE BETWEEN EACH WORD***

3) All directories and/or files to exclude must be listed as relative
paths to the directory being tarred, i.e. last parameter on the command
line.

4) I don't know the maximum line-length, which would limit the number of
--exclude entries.  In those cases, I wonder if "--exclude-from=FILE"
works as "--exclude-from FILE".

-- 
Walter Dnes <waltdnes@waltdnes.org>
I don't run "desktop environments"; I run useful applications


             reply	other threads:[~2021-05-05 13:34 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-05 13:33 Walter Dnes [this message]
2021-05-05 14:03 ` [gentoo-user] [OT] tar exclude syntax tip tastytea
2021-05-05 14:10   ` [gentoo-user] " Nuno Silva
2021-05-05 14:23     ` tastytea
2021-05-05 15:28   ` [gentoo-user] " Walter Dnes
2021-05-05 16:00     ` tastytea
2021-05-05 15:20 ` Grant Taylor
2021-05-06  0:07 ` Frank Steinmetzger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YJKexsxwztZx2zz3@waltdnes.org \
    --to=waltdnes@waltdnes.org \
    --cc=gentoo-user@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox