<!DOCTYPE html>
<html>
<!-- This is an automatically generated file.  Do not edit.
   zipcmp.mdoc -- compare zip archives
   Copyright (C) 2003-2017 Dieter Baron and Thomas Klausner
  
   This file is part of libzip, a library to manipulate ZIP archives.
   The authors can be contacted at <libzip@nih.at>
  
   Redistribution and use in source and binary forms, with or without
   modification, are permitted provided that the following conditions
   are met:
   1. Redistributions of source code must retain the above copyright
      notice, this list of conditions and the following disclaimer.
   2. Redistributions in binary form must reproduce the above copyright
      notice, this list of conditions and the following disclaimer in
      the documentation and/or other materials provided with the
      distribution.
   3. The names of the authors may not be used to endorse or promote
      products derived from this software without specific prior
      written permission.
  
   THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS
   OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
   WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY
   DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
   GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
   IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
   OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
   IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   -->
<head>
  <meta charset="utf-8"/>
  <link rel="stylesheet" href="../nih-man.css" type="text/css" media="all"/>
  <title>ZIPCMP(1)</title>
</head>
<body>
<table class="head">
  <tr>
    <td class="head-ltitle">ZIPCMP(1)</td>
    <td class="head-vol">General Commands Manual</td>
    <td class="head-rtitle">ZIPCMP(1)</td>
  </tr>
</table>
<div class="manual-text">
<h1 class="Sh" title="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
<code class="Nm" title="Nm">zipcmp</code> &#x2014;
<div class="Nd" title="Nd">compare contents of zip archives</div>
<h1 class="Sh" title="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
<table class="Nm">
  <tr>
    <td><code class="Nm" title="Nm">zipcmp</code></td>
    <td>[<div class="Op"><code class="Fl" title="Fl">-hipqtVv</code></div>]
      <var class="Ar" title="Ar">archive1 archive2</var></td>
  </tr>
</table>
<h1 class="Sh" title="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
<code class="Nm" title="Nm">zipcmp</code> compares the zip archives or
  directories <var class="Ar" title="Ar">archive1</var> and
  <var class="Ar" title="Ar">archive2</var> and checks if they contain the same
  files, comparing their names, uncompressed sizes, and CRCs. File order and
  compressed size differences are ignored.
<div class="Pp"></div>
Supported options:
<dl class="Bl-tag" style="margin-left: 6.60ex;">
  <dt style="margin-left: -6.60ex;">&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt style="margin-left: -6.60ex;"><a class="permalink" href="#h"><code class="Fl" title="Fl" id="h">-h</code></a></dt>
  <dd>Display a short help message and exit.</dd>
  <dt style="margin-left: -6.60ex;">&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt style="margin-left: -6.60ex;"><a class="permalink" href="#i"><code class="Fl" title="Fl" id="i">-i</code></a></dt>
  <dd>Compare names ignoring case distinctions.</dd>
  <dt style="margin-left: -6.60ex;">&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt style="margin-left: -6.60ex;"><a class="permalink" href="#p"><code class="Fl" title="Fl" id="p">-p</code></a></dt>
  <dd>Enable paranoid checks. Compares extra fields and other meta data.
      (Automatically disabled if one of the archives is a directory.)</dd>
  <dt style="margin-left: -6.60ex;">&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt style="margin-left: -6.60ex;"><a class="permalink" href="#q"><code class="Fl" title="Fl" id="q">-q</code></a></dt>
  <dd>Quiet mode. Compare <code class="Fl" title="Fl">-v</code>.</dd>
  <dt style="margin-left: -6.60ex;">&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt style="margin-left: -6.60ex;"><a class="permalink" href="#t"><code class="Fl" title="Fl" id="t">-t</code></a></dt>
  <dd>Test zip files by comparing the contents to their checksums.</dd>
  <dt style="margin-left: -6.60ex;">&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt style="margin-left: -6.60ex;"><a class="permalink" href="#V"><code class="Fl" title="Fl" id="V">-V</code></a></dt>
  <dd>Display version information and exit.</dd>
  <dt style="margin-left: -6.60ex;">&#x00A0;</dt>
  <dd>&#x00A0;</dd>
  <dt style="margin-left: -6.60ex;"><a class="permalink" href="#v"><code class="Fl" title="Fl" id="v">-v</code></a></dt>
  <dd>Verbose mode. Print details about differences to stdout. (This is the
      default.)</dd>
</dl>
<h1 class="Sh" title="Sh" id="EXIT_STATUS"><a class="permalink" href="#EXIT_STATUS">EXIT
  STATUS</a></h1>
<code class="Nm" title="Nm">zipcmp</code> exits 0 if the two archives contain
  the same files, 1 if they differ, and &gt;1 if an error occurred.
<h1 class="Sh" title="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
  ALSO</a></h1>
<a class="Xr" title="Xr" href="zipmerge.html">zipmerge(1)</a>,
  <a class="Xr" title="Xr" href="ziptool.html">ziptool(1)</a>,
  <a class="Xr" title="Xr" href="libzip.html">libzip(3)</a>
<h1 class="Sh" title="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1>
<code class="Nm" title="Nm">zipcmp</code> was added in libzip 0.6.
<h1 class="Sh" title="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1>
<span class="An" title="An">Dieter Baron</span>
  &lt;<a class="Mt" title="Mt" href="mailto:dillo@nih.at">dillo@nih.at</a>&gt;
  and <span class="An" title="An">Thomas Klausner</span>
  &lt;<a class="Mt" title="Mt" href="mailto:tk@giga.or.at">tk@giga.or.at</a>&gt;</div>
<table class="foot">
  <tr>
    <td class="foot-date">December 18, 2017</td>
    <td class="foot-os">NetBSD 8.99.16</td>
  </tr>
</table>
</body>
</html>
