Hi Steffen,

> So it collects a list of files in a textfile, and then either
>   $tarxcmd = "tar -c -f - | $COMPRESSOR > $ar";
> or
>   $tarxcmd = "tar -r -f $ar >/dev/null";

With the second of these, $ar isn't a compressed file name, like
foo.tar.gz?  Which was used for the problem tar file?

> and then
>         unless (open XARGS, "| xargs -0 $tarxcmd 2>>$MFFN") {

So xargs may run tar more than once, and if $#{$listref} has been
growing then perhaps it's tipped over from one invocation to two
recently?

> They are however part of the archive content, e.g.:
> 
>   ?130[steffen@wales x]$ tar -tf monthly-backup.tar | grep 'mail/2013.track'
>   ?1[steffen@wales x]$ grep 'mail/2013.track' monthly-backup.tar
>   Binary file monthly-backup.tar matches

Is monthly-backup.tar the value of $ar above?  Or have you manually
decompressed it?

Are you aware of this behaviour?

    $ (tar cf - foo; tar cf - bar) | tar tf -
    foo
    $ (tar cf - foo; tar cf - bar) | (tar tf -; tar tf -)
    foo
    bar
    $ (tar cf - foo; tar cf - bar) | gzip | tar tzf -
    foo
    $

Cheers, Ralph.

Reply via email to