GNU/Linux >> Linux Esercitazione >  >> Linux

Dati compressi non validi:formato violato?

Posizione alternativa di fixgz di Gzip Utilità

Nel caso in cui non riesci più a trovare fixgz sul sito Web di gzip.org, ecco un collegamento a una versione disponibile su archive.org:https://web.archive.org/web/20180624175352/http://www.gzip.org/fixgz.zip.

Codice sorgente per fixgz Utilità

Inoltre, nel caso in cui anche questo scompaia, di seguito è riportato il codice sorgente per fixgz utilità:

/* fixgz attempts to fix a binary file transferred in ascii mode by
 * removing each extra CR when it followed by LF.
 * usage: fixgz  bad.gz fixed.gz

 * Copyright 1998 Jean-loup Gailly <[email protected]>
 *   This software is provided 'as-is', without any express or implied
 * warranty.  In no event will the author be held liable for any damages
 * arising from the use of this software.

 * Permission is granted to anyone to use this software for any purpose,
 * including commercial applications, and to alter it and redistribute it
 * freely.
 */

#include <stdio.h>

int main(argc, argv)
     int argc;
     char **argv;
{
    int c1, c2; /* input bytes */
    FILE *in;   /* corrupted input file */
    FILE *out;  /* fixed output file */

    if (argc <= 2) {
    fprintf(stderr, "usage: fixgz bad.gz fixed.gz\n");
    exit(1);
    }
    in  = fopen(argv[1], "rb");
    if (in == NULL) {
    fprintf(stderr, "fixgz: cannot open %s\n", argv[1]);
    exit(1);
    }
    out = fopen(argv[2], "wb");
    if (in == NULL) {
    fprintf(stderr, "fixgz: cannot create %s\n", argv[2]);
    exit(1);
    }

    c1 = fgetc(in);

    while ((c2 = fgetc(in)) != EOF) {
    if (c1 != '\r' || c2 != '\n') {
        fputc(c1, out);
    }
    c1 = c2;
    }
    if (c1 != EOF) {
    fputc(c1, out);
    }
    exit(0);
    return 0; /* avoid warning */
}


Il tuo comando è corretto. Ma sembra che il file sia corrotto. È facile dirlo, quando alcuni file vengono estratti correttamente (ad esempio ./dokuwiki/.htaccess.dist ), ma non il resto.

Ricrea il dokuwiki.20151010.tar.gz file e assicurati che non riporti errori mentre lo fai. Se hai scaricato il file da qualche parte, verifica il checksum o almeno la dimensione del file.

La linea di fondo è che il file è stato creato o scaricato in modo errato. Il comando che hai dovrebbe funzionare bene con un .tar.gz file.


Linux
  1. Ordine di reindirizzamento?

  2. Linux:tutto è un file?

  3. Come scansionare caratteri non validi su Gedit?

  4. Contare le righe in un file?

  5. cPanel File di licenza non valido dopo la modifica dell'errore del nome host

Come visualizzare il contenuto di un archivio o di un file compresso in Linux

Editor VIM

File di licenza non valido:cPanel e WHM

Il potere dei comandi Z:esempi Zcat, Zless, Zgrep, Zdiff

Come creare un file in Linux dalla finestra del terminale?

File id_rsa.pub Errore SSH:formato non valido