📄 zip.doc
字号:
NAME
zip, zipcloak, zipnote, zipsplit - package and compress
(archive) files
SYNOPSIS
zip [-cdDeEfFghjklLmoqrSTuvVwyz@$] [-b path] [-n suffixes]
[-t mmddyy] [ zipfile [ file1 file2 ...]] [-xi list]
zipcloak [-dhL] [-b path] zipfile
zipnote [-hwL] [-b path] zipfile
zipsplit [-hitL] [-b path] zipfile
DESCRIPTION
zip is a compression and file packaging utility for Unix,
VMS, MSDOS, OS/2, Windows NT, Minix, Atari and Macintosh.
It is analogous to a combination of the UNIX commands tar(1)
and compress(1) and is compatible with PKZIP (Phil Katz's
ZIP for MSDOS systems).
A companion program (unzip(1L)), unpacks zip archives. The
zip and unzip(1L) programs can work with archives produced
by PKZIP, and PKZIP and PKUNZIP can work with archives pro-
duced by zip. zip version 2.0 is compatible with PKZIP 2.04
Note that PKUNZIP 1.10 cannot extract files produced by
PKZIP 2.04 or zip 2.0. You must use PKUNZIP 2.04g or unzip
5.0p1 (or later versions) to extract them.
For a brief help on zip and unzip, run each without specify-
ing any parameters on the command line.
The program is useful for packaging a set of files for dis-
tribution; for archiving files; and for saving disk space by
temporarily compressing unused files or directories.
The zip program puts one or more compressed files into a
single zip archive, along with information about the files
(name, path, date, time of last modification, protection,
and check information to verify file integrity). An entire
directory structure can be packed into a zip archive with a
single command. Compression ratios of 2:1 to 3:1 are common
for text files. zip has one compression method (deflation)
and can also store files without compression. zip automati-
cally chooses the better of the two for each file to be
compressed.
When given the name of an existing zip archive, zip will
replace identically named entries in the zip archive or add
entries for new names. For example, if foo.zip exists and
contains foo/file1 and foo/file2, and the directory foo con-
tains the files foo/file1 and foo/file3, then:
zip -r foo foo
will replace foo/file1 in foo.zip and add foo/file3 to
foo.zip. After this, foo.zip contains foo/file1, foo/file2,
and foo/file3, with foo/file2 unchanged from before.
If the file list is specified as -@, zip takes the list of
input files from standard input. Under UNIX, this option
can be used to powerful effect in conjunction with the
find(1) command. For example, to archive all the C source
files in the current directory and its subdirectories:
find . -name "*.[ch]" -print | zip source -@
(note that the pattern must be quoted to keep the shell from
expanding it). zip will also accept a single dash ("-") as
the zip file name, in which case it will write the zip file
to standard output, allowing the output to be piped to
another program. For example:
zip -r - . | dd of=/dev/nrst0 obs=16k
would write the zip output directly to a tape with the
specified block size for the purpose of backing up the
current directory.
zip also accepts a single dash ("-") as the name of a file
to be compressed, in which case it will read the file from
standard input, allowing zip to take input from another pro-
gram. For example:
tar cf - . | zip backup -
would compress the output of the tar command for the purpose
of backing up the current directory. This generally produces
better compression than the previous example using the -r
option, because zip can take advantage of redundancy between
files. The backup can be restored using the command
unzip -p backup | tar xf -
When no zip file name is given and stdout is not a terminal,
zip acts as a filter, compressing standard input to standard
output. For example,
tar cf - . | zip | dd of=/dev/nrst0 obs=16k
is equivalent to
tar cf - . | zip - - | dd of=/dev/nrst0 obs=16k
zip archives created in this manner can be extracted with
the program funzip which is provided in the unzip package,
or by gunzip which is provided in the gzip package. For
example:
dd if=/dev/nrst0 ibs=16k | funzip | tar xvf -
When changing an existing zip archive, zip will write a tem-
porary file with the new contents, and only replace the old
one when the process of creating the new version has been
completed without error.
If the name of the zip archive does not contain an exten-
sion, the extension .zip is added. If the name already con-
tains an extension other than .zip the existing extension is
kept unchanged.
OPTIONS
-b path
Use the specified path for the temporary zip archive.
For example:
zip -b /tmp stuff *
will put the temporary zip archive in the directory
/tmp, copying over stuff.zip to the current directory
when done. This option is only useful when updating an
existing archive, and the file system containing this
old archive does not have enough space to hold both old
and new archive at the same time.
-c Add one-line comments for each file. File operations
(adding, updating) are done first, and the user is then
prompted for a one-line comment for each file. Enter
the comment followed by return, or just return for no
comment.
-d Remove (delete) entries from a zip archive. For exam-
ple:
zip -d foo foo/tom/junk foo/harry/\* \*.o
will remove the entry foo/tom/junk, all of the files
that start with foo/harry/, and all of the files that
end with .o (in any path). Note that shell pathname
expansion has been inhibited with backslashes, so that
zip can see the asterisks, enabling zip to match on the
contents of the zip archive instead of the contents of
the current directory.
Under MSDOS, -d is case sensitive when it matches names
in the zip archive. This requires that file names be
entered in upper case if they were zipped by PKZIP on
an MSDOS system.
-D Do not create entries in the zip archive for direc-
tories. Directory entries are created by default so
that their attributes can be saved in the zip archive.
The environment variable ZIPOPT can be used to change
the default options. For example under Unix with sh:
ZIPOPT="-D"; export ZIPOPT
(The variable ZIPOPT can be used for any option except
-i and -x and can include several options.) The option
-D is a shorthand for -x "*/" but the latter cannot be
set as default in the ZIPOPT environment variable.
-e Encrypt the contents of the zip archive using a pass-
word which is entered on the terminal in response to a
prompt (this will not be echoed; if standard error is
not a tty, zip will exit with an error).
-ee Encrypt contents, prompting for the password twice,
checking that the two entries are identical before
using the password.
-f Replace (freshen) an existing entry in the zip archive
only if it has been modified more recently than the
version already in the zip archive; unlike the update
option (-u) this will not add files that are not
already in the zip archive. For example:
zip -f foo
This command should be run from the same directory from
which the original zip command was run, since paths
stored in zip archives are always relative.
-F Fix the zip archive. This option can be used if some
portions of the archive are missing. It is not
guaranteed to work, so you MUST make a backup of the
original archive first.
When doubled as in -FF the compressed sizes given
inside the damaged archive are not trusted and zip
scans for special signatures to identify the limits
between the archive members. The single -F is more
reliable if the archive is not too much damaged, for
example if it has only been truncated, so try this
option first.
Neither option will recover archives that have been
incorrectly transferred in ascii mode instead of
binary. After the repair, the -t option of unzip may
show that some files have a bad CRC. Such files cannot
be recovered; you can remove them from the archive
using the -d option of zip.
-g Grow (append to) the specified zip archive, instead of
creating a new one. If this operation fails, zip
attempts to restore the archive to its original state.
If the restoration fails, the archive might become cor-
rupted.
-h Display the zip help information (this also appears if
zip is run with no arguments).
-i files
Include only the specified files, as in:
zip -r foo . -i \*.c
which will include only the files that end in .c in the
current directory and its subdirectories. (Note for
PKZIP users: the equivalent command is
pkzip -r foo *.c
PKZIP does not allow recursion in directories other
than the current one.) The backslash avoids the shell
filename substitution, so that the name matching is
performed by zip at all directory levels.
-j Store just the name of a saved file (junk the path),
and do not store directory names. By default, zip will
store the full path (relative to the current path).
-k Attempt to convert the names and paths to conform to
MSDOS, store only the MSDOS attribute (just the user
write attribute from UNIX), and mark the entry as made
under MSDOS (even though it was not); for compatibility
with PKUNZIP under MSDOS which cannot handle certain
names such as those with two dots.
-l Translate the Unix end-of-line character LF into the
MSDOS convention CR LF. This option should not be used
on binary files. This option can be used on Unix if
the zip file is intended for PKUNZIP under MSDOS. If
the input files already contain CR LF, this option adds
an extra CR. This ensure that unzip -a on Unix will get
back an exact copy of the original file, to undo the
effect of zip -l.
-ll Translate the MSDOS end-of-line CR LF into Unix LF.
This option should not be used on binary files. This
option can be used on MSDOS if the zip file is intended
for unzip under Unix.
-L Display the zip license.
-m Move the specified files into the zip archive; actu-
ally, this deletes the target directories/files after
making the specified zip archive. If a directory
becomes empty after removal of the files, the directory
is also removed. No deletions are done until zip has
created the archive without error. This is useful for
conserving disk space, but is potentially dangerous so
it is recommended to use it in combination with -T to
test the archive before removing all input files.
-n suffixes
Do not attempt to compress files named with the given
suffixes. Such files are simply stored (0% compression)
in the output zip file, so that zip doesn't waste its
time trying to compress them. The suffixes are
separated by either colons or semicolons. For example:
zip -rn .Z:.zip:.tiff:.gif:.snd foo foo
will copy everything from foo into foo.zip, but will
store any files that end in .Z, .zip, .tiff, .gif, or
.snd without trying to compress them (image and sound
files often have their own specialized compression
methods). By default, zip does not compress files with
extensions in the list .Z:.zip:.zoo:.arc:.lzh:.arj.
Such files are stored directly in the output archive.
The environment variable ZIPOPT can be used to change
the default options. For example under Unix with csh:
setenv ZIPOPT "-n .gif:.zip"
To attempt compression on all files, use:
zip -n : foo
The maximum compression option -9 also attempts
compression on all files regardless of extension.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -