(tar.info.gz) files

Info Catalog (tar.info.gz) Selecting Archive Members (tar.info.gz) Choosing (tar.info.gz) exclude
 
 6.3 Reading Names from a File
 =============================
 
 Instead of giving the names of files or archive members on the command
 line, you can put the names into a file, and then use the
 '--files-from=FILE-OF-NAMES' ('-T FILE-OF-NAMES') option to 'tar'.  Give
 the name of the file which contains the list of files to include as the
 argument to '--files-from'.  In the list, the file names should be
 separated by newlines.  You will frequently use this option when you
 have generated the list of files to archive with the 'find' utility.
 
 '--files-from=FILE-NAME'
 '-T FILE-NAME'
      Get names to extract or create from file FILE-NAME.
 
    If you give a single dash as a file name for '--files-from', (i.e.,
 you specify either '--files-from=-' or '-T -'), then the file names are
 read from standard input.
 
    Unless you are running 'tar' with '--create', you can not use both
 '--files-from=-' and '--file=-' ('-f -') in the same command.
 
    Any number of '-T' options can be given in the command line.
 
    The following example shows how to use 'find' to generate a list of
 files smaller than 400K in length and put that list into a file called
 'small-files'.  You can then use the '-T' option to 'tar' to specify the
 files from that file, 'small-files', to create the archive 'little.tgz'.
 (The '-z' option to 'tar' compresses the archive with 'gzip'; 
 gzip for more information.)
 
      $ find . -size -400 -print > small-files
      $ tar -c -v -z -T small-files -f little.tgz
 
 In the file list given by '-T' option, any file name beginning with '-'
 character is considered a 'tar' option and is processed accordingly(1).
 For example, the common use of this feature is to change to another
 directory by specifying '-C' option:
 
      $ cat list
      -C/etc
      passwd
      hosts
      -C/lib
      libc.a
      $ tar -c -f foo.tar --files-from list
 
 In this example, 'tar' will first switch to '/etc' directory and add
 files 'passwd' and 'hosts' to the archive.  Then it will change to
 '/lib' directory and will archive the file 'libc.a'.  Thus, the
 resulting archive 'foo.tar' will contain:
 
      $ tar tf foo.tar
      passwd
      hosts
      libc.a
 
 Notice that the option parsing algorithm used with '-T' is stricter than
 the one used by shell.  Namely, when specifying option arguments, you
 should observe the following rules:
 
    * When using short (single-letter) option form, its argument must
      immediately follow the option letter, without any intervening
      whitespace.  For example: '-Cdir'.
 
    * When using long option form, the option argument must be separated
      from the option by a single equal sign.  No whitespace is allowed
      on any side of the equal sign.  For example: '--directory=dir'.
 
    * For both short and long option forms, the option argument can be
      given on the next line after the option name, e.g.:
 
           --directory
           dir
 
      and
 
           -C
           dir
 
    If you happen to have a file whose name starts with '-', precede it
 with '--add-file' option to prevent it from being recognized as an
 option.  For example: '--add-file=--my-file'.
 

Menu

 
* nul
 
    ---------- Footnotes ----------
 
    (1) Versions of GNU 'tar' up to 1.15.1 recognized only '-C' option in
 file lists, and only if the option and its argument occupied two
 consecutive lines.
 
Info Catalog (tar.info.gz) Selecting Archive Members (tar.info.gz) Choosing (tar.info.gz) exclude
automatically generated by info2html