⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 manual

📁 给出了 zip 压缩算法的完整实现过程。
💻
📖 第 1 页 / 共 3 页
字号:
ZIP(1L)                                                                ZIP(1L)NAME       zip, zipcloak, zipnote, zipsplit - package and compress (archive) filesSYNOPSIS       zip   [-aABcdDeEfFghjklLmoqrRSTuvVwXyz!@$]   [-b path]    [-n suffixes]       [-t mmddyyyy] [-tt mmddyyyy] [ zipfile [ file1 file2 ...]] [-xi list]       zipcloak [-dhL] [-b path] zipfile       zipnote [-hwL] [-b path] zipfile       zipsplit [-hiLpst] [-n size] [-b path] zipfileDESCRIPTION       zip  is  a compression and file packaging utility for Unix, VMS, MSDOS,       OS/2, Windows NT, Minix, Atari and Macintosh, Amiga and Acorn RISC  OS.       It  is  analogous to a combination of the UNIX commands tar(1) and com-       press(1) and is compatible with PKZIP (Phil Katz's ZIP for  MSDOS  sys-       tems).       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 produced by zip.  zip version 2.32       is compatible with PKZIP 2.04.  Note that PKUNZIP 1.10  cannot  extract       files produced by PKZIP 2.04 or zip 2.32. 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  specifying  any       parameters on the command line.       The  program  is  useful for packaging a set of files for distribution;       for archiving files; and for saving disk space by temporarily compress-       ing 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 automatically chooses       the better of the two for each file to be compressed.       The basic command format is              zip options archive inpattern inpattern ...       where archive is a new or existing  zip  archive  and  inpattern  is  a       directory  or file path optionally including wildcards.  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  direc-       tory foo contains the files foo/file1 and foo/file3, then:              zip -r foo.zip foo       or more concisely              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 -@, [Not on MacOS] 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 "*.[ch]" 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 com-       pressed, in which case it will  read  the  file  from  standard  input,       allowing zip to take input from another program. 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  exam-       ple,              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 temporary 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 extension, the       extension .zip is added. If the  name  already  contains  an  extension       other than .zip the existing extension is kept unchanged.OPTIONS       -a     [Systems using EBCDIC] Translate file to ASCII format.       -A     Adjust  self-extracting  executable  archive.  A self-extracting              executable archive is created by prepending the SFX stub  to  an              existing  archive.  The  -A option tells zip to adjust the entry              offsets  stored  in  the  archive  to  take  into  account  this              "preamble" data.       Note:  self-extracting  archives  for the Amiga are a special case.  At       present, only the Amiga port of zip is capable of adjusting or updating       these  without  corrupting them.  -J can be used to remove the SFX stub       if other updates need to be made.       -B     [VM/CMS and MVS] force file to be read binary (default is text).       -Bn    [TANDEM] set Edit/Enscribe formatting options with n defined as              bit  0: Don't add delimiter (Edit/Enscribe)              bit 1: Use LF rather than CR/LF as delimiter (Edit/Enscribe)              bit  2: Space fill record to maximum record length (Enscribe)              bit  3: Trim trailing space (Enscribe)              bit 8: Force 30K (Expand) large read for unstructured files       -b path              Use  the specified path for the temporary zip archive. For exam-              ple:                     zip -b /tmp stuff *              will put the temporary zip archive in the directory /tmp,  copy-              ing  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 archives 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 example:                     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.  You can also use  quotes  to              escape wildcards, as in                     zip -d foo foo/tom/junk "foo/harry/*" "*.o"              Under systems where the shell does not expand wildcards, such as              MSDOS, the backslashes are not needed.  The above would then be                     zip -d foo foo/tom/junk foo/harry/* *.o              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.       -df    [MacOS] Include only data-fork of files zipped into the archive.              Good   for   exporting   files   to  foreign  operating-systems.              Resource-forks will be ignored at all.       -D     Do not create  entries  in  the  zip  archive  for  directories.              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 password 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).  The password prompt is  repeated  to  save  the              user  from typing errors.  Note that this encrypts with standard              pkzip encryption which is considered weak.       -E     [OS/2] Use the .LONGNAME Extended Attribute (if found) as  file-              name.       -f     Replace  (freshen)  an existing entry in the zip archive only if              it has been modified more recently than the version  already  in              the  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.              Note that the timezone environment variable  TZ  should  be  set              according  to the local timezone in order for the -f , -u and -o              options to work correctly.  The reasons behind this are somewhat              subtle but have to do with the differences between the Unix-for-              mat file times (always in GMT) and most of the  other  operating              systems  (always  local  time)  and the necessity to compare the              two.  A typical TZ value is ``MET-1MEST'' (Middle European  time              with automatic adjustment for ``summertime'' or Daylight Savings              Time).       -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 signa-              tures to identify the limits between the  archive  members.  The              single  -F  is more reliable if the archive is not too much dam-              aged, 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 corrupted.  This  option  is  ignored  when              there's  no existing archive or when at least one archive member              must be updated or deleted.       -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 -rP foo *.c              PKZIP  does  not  allow  recursion in directories other than the              current one.)  The backslash avoids the shell filename substitu-              tion,  so  that  the  name  matching  is performed by zip at all              directory levels.  Not escaping  wildcards  on  shells  that  do              wildcard  substitution before zip gets the command line may seem              to work but files in subdirectories matching  the  pattern  will              never  be checked and so not matched.  For shells, such as Win32              command prompts, that do not replace  file  patterns  containing              wildcards with the respective file names, zip will do the recur-              sion and escaping the wildcards is not needed.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -