Are you using cmd or powershell? Powershell unfortunately tries to convert all program output for UTF-16 which will break the tar and zip files.
See for example Don’t parse the pipeline as text when it is directed from an EXE to another EXE or file. Keep the bytes as-is. · Issue #1908 · PowerShell/PowerShell · GitHub and Lee Holmes | Redirecting Binary Output in PowerShell