is it plausible that Ubuntu's wildcard * with tar is somehow failing to restore some files?

Solution 1:

Your wildcard expands what is already on disk, not what is inside the archive (tgz).

Solution 2:

when you do:

tar xvpfz backup2011Sep06T0000.tgz ./javawork/Trader1/*.sh

the *.sh is expanded by shell (assuming any ./javawork/Trader1/*.sh exists). So, tar will be executed by shell as:

tar xvpfz backup2011Sep06T0000.tgz ./javawork/Trader1/goReloadOp.sh ./javawork/Trader1/goReloadAudit.sh ./javawork/Trader1/goTrade.sh

If you want to pass wildcard to the tar, to say "please extract me only those files" you need to single-quote it and add --wildcards option:

tar xvpfz backup2011Sep06T0000.tgz --wildcards './javawork/Trader1/*.sh'