Hello Ralph! Ralph Corderoy <ra...@inputplus.co.uk> wrote: |> 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?
The monthly one, the first. |> 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? I don't understand this sentence of yours? |> They are however part of the archive content, e.g.: |> |> ?130[steffen@wales x]$ tar -tf monthly-backup.tar | grep 'mail/2013.tra\ |> ck' |> ?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? I ran xz -d on it first, manually. |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 No, actually not! I only recall i've looked into tar.h once and thought the archive header is so simple... Hmm. So that makes me think the problem is that there is padding missing and therefore the restarted stuff is misplaced... Dammit. My excuse is that this change i have actually applied last october shortly after my old machine died in which i "cosily" lived for six years, whatever, and hadn't all those nice VMs available for testing. I.e., not all tar's behave the same. Hmm. 'Have chosen the worst possibility. Isn't worth a thing. Well. Thanks, Ralph, and sorry for the noise (i.e., thank you, moderator)! --steffen