PKZIP and PKUNZIP

Quick links

PKZIP for Windows
PKZIP for DOS
Technical Support

PKZIP FOR Windows

Version 2.70 is the latest version of PKZIP for Windows and is meant to be used for users using Microsoft Windows and includes some of the below features.

  • The ability to create self extracting EXE files
  • Support for ZIP, TAR, GZIP, MIME, BinHex, UUecode, and XXencode

PKZIP FOR DOS

Version 2.50 is the latest version of PKZIP for DOS and is used at the command line of MS-DOS and includes the below features.

  • Supports long file names
  • Capability of compressing over 16,000 files
  • Additional compression options
  • Continues to use 2.04g command line syntax
  • Y2k Compliant

Technical Support

PKZIP for Windows

Currently no known issues

PKZIP for DOS

How do I ZIP files that are larger than one diskette onto multiple diskettes?

To do this you would use the below syntax.

pkzip [directory] [diskfilename] -&.

Example:

pkzip c:\windows\*.* a:\windows.zip -&.

The -& is the important part of the above line and is telling pkzip to place your files onto multiple disks.

Will I be able to unzip a program with Winzip I zipped in PKZIP? 

Assuming the file was zipped correctly, any file with the .zip extension will be able to be pkunziped as will as unzipped in Winzip or any other compression utility that is able to read .zip extensions.

Do you have a listing of available switches used at the command line?

PKUNZIP (R) FAST! Extract Utility Version 2.04g 02-01-93
Corp. 1989-1993 PKWARE Inc. All Rights Reserved. Registered version
PKUNZIP Reg. U.S. Pat. and TM. Off.

Usage: PKUNZIP [options] zipfile [@list] [files...]

-c[m]Extract files to Console [with More]
-dRestore/create Directory structure stored in .ZIP file
-e[c|d|e|n|p|r|s]Extract files. Sort by [CRC | Date | Extension | Name| Percentage | Reverse | Size]
-fFreshen files in destination directory
-j|J<h,r,s>Mask|don't mask <Hidden/System/Read-only> files (def.=jhrs)
-nExtract only Newer files.
-oOverwrite previously existing files.
-p[a/b][c][#]Extract to Printer [Asc mode,Bin mode,Com port] [port #]
-qEnable ANSI comments
-s[pwd]Decrypt with password [If no pwd is given, prompt for pwd]
-tTest .ZIP file integrity
-v[b][r][m][t]View .ZIP [Brief][Reverse][More][Technical] sort by [CR.|
[c,d,e,n,o,p,s]Date|Extension|Name|natural Order(default)|Percentage|Size]
-x<filespec>Exclude file(s) from extraction
-$Restore volume label on destination drive.
-@listfileGenerate list file

-3 Disable 32-bit instruction usage on 80386 or higher CPU's
-^ Echo the command line
-+ Disable Expanded Memory (EMS) usage
-- Disable UMB/HMA Memory (XMS) usage
-) Disable 32 bit DPMI usage

You can default any of these options with the PKUNZIP environment
variable. Consult the file ADDENDUM.DOC for further information.

PKWARE, Inc
9025 N. Deerwood Drive
Brown Deer, WI 53223

How PKZIP and most other compression software work:

How Does PKZIP work? PKZIP uses several methods of compressing data by using seek out and eliminate redundant information within a file. With the redundant material removed, the file takes up less space. And because the information was redundant, PKUNZIP can restore that material when it unzips your file. An example, consider the below line, which you might find similar in a word-processor document:

The rain in Spain falls mainly on the plain.

Normally the above statement would take 44 or more bytes of disk space because of the amount of words in the document. But this simple line contains a surprising amount of repetition. The letters in and the space after the word in are repeated at the ends of the words rain and Spain in the sentence. The sequence ain occurs four times, the two-character sequence n plus a space occurs twice, and the three-character sequence he plus a space occurs twice. What if you replaced each duplicate occurrence of one of these strings with a special code, called a token, that would stand for the duplicated numbers? each token would contain a much shorter number combination that told you how many characters (including spaces) to count backwards in the string and how may characters (including spaces) were duplicated. Then the line would look like:

The rain <3,2>Sp<9,4>falls m<11,3>ly on<16,2>t<34,3>pl<15,3>.

Data compression works because the string's original form can be reconstructed based on tokens, for example, when PKUNZIP encounters <3,3>, it counts back three characters from the beginning of the token and replaces the token with the tree characters it finds there. Tokens recorded in a file by means of a special technique that enables them to be stored in less space than the bytes they replace. In other words, a token such as 3,3 can be stored in less space than three bytes it replaces. If the token took up more space than the bytes it was replacing, there wouldn't be any point in using it. The key to data compression is the ability to search a string of bytes, identify any duplicated sequences, and replace the repeated bytes with short tokens. With only 44 bytes to work with, a short string like the example above must have a lot of duplication if the data compression is going to be worthwhile. But the longer the string, the more likely it is to contain receptive information that can be replaced with tokens.