Você também pode gostar de usar zdiff se quiser comparar o conteúdo compactado.
Eu uso o comando "diff" para comparar dois arquivos compactados gerados usando o zip no mesmo arquivo inicial e eles são reportados como sendo diferentes. No entanto, quando eu descompactar e usar o comando "diff", nenhuma diferença é mostrada. Eu notei isso com zip e gzip.
Um dos campos no cabeçalho do gzip é diferente entre os dois arquivos. Um desses campos é o horário da última modificação do arquivo compactado (em segundos desde 1970) ou se os dados compactados não foram lidos de um arquivo e, em seguida, a hora em que o arquivo foi compactado.
Mesmo uma diferença de um segundo é suficiente para fazer com que os arquivos gzip não coincidam.
Duas causas possíveis:
Você pode usar a opção gzip --no-name
(ou -n
) para impedir que o gzip inclua o nome do arquivo original e o registro de data e hora no cabeçalho do gzip. Isso deve evitar incompatibilidades quando os dados são os mesmos, supondo que o mesmo nível de compactação seja usado. Uma maneira de adicionar essa opção aos comandos gzip é definir a variável de ambiente GZIP
, para que essa opção seja usada por todos os comandos gzip. Por exemplo, em um shell compatível com o Bourne, como bash,
export GZIP="--no-name -6"
ou
export GZIP=--no-name