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

📄 zoo.man

📁 汇编源代码大全
💻 MAN
📖 第 1 页 / 共 4 页
字号:
          extracted pathname beginning with `/' to be interpreted
          relative to the current directory, resulting in the
          possible creation of a subtree rooted at the current
          directory.  In conjunction with the command P the .
          modifier causes the packed archive to be created in the
          current directory.  This is intended to allow users
          with limited disk space but multiple disk drives to
          pack large archives.

     d    Most commands that act on an archive act only on files
          that are not deleted.  The d modifier makes commands
          act on both normal and deleted files.  If doubled as
          dd, this modifier forces selection only of deleted
          files.

     f    Applied to the a and u commands, the f modifier causes
          fast archiving by adding files without compression.
          Applied to l it causes a fast listing of files in a
          multicolumn format.

     q    Be quiet.  Normally zoo lists the name of each file and
          what action it is performing.  The q modifier
          suppresses this.  When files are being extracted to
          standard output, the q modifier suppresses the header
          preceding each file.  When archive contents are being
          listed, this modifier suppresses any header and
          trailer.  When a fast columnized listing is being
          obtained, this modifier causes all output to be com-
          bined into a single set of filenames for all archives
          being listed.

          When doubled as qq, this modifier suppresses WARNING
          messages, and when tripled as qqq, ERROR messages are
          suppressed too.  FATAL error messages are never
          suppressed.

     Recovering data from damaged archives

     The @ modifier allows the user to specify the exact position
     in an archive where zoo should extract a file from, allowing
     damaged portions of an archive to be skipped.  This modifier
     must be immediately followed by a decimal integer without
     intervening spaces, and possibly by a comma and another
     decimal integer, giving a command of the form l@m or l@m,n
     (to list archive contents) or x@m or x@m,n (to extract files
     from an archive).  Listing or extraction begin at position m
     in the archive.  The value of m must be the position within
     the archive of an undamaged directory entry.  This position
     is usually obtained from fiz(1) version 2.0 or later.

     If damage to the archive has shortened or lengthened it, all
     positions within the archive may be changed by some constant
     amount.  To compensate for this, the value of n may be
     specified.  This value is also usually obtained from fiz(1).
     It should be the position in the archive of the file data
     corresponding to the directory entry that has been specified
     with m.  Thus if the command x@456,575 is given, it will
     cause the first 456 bytes of the archive to be skipped and
     extraction to begin at offset 456;  in addition, zoo will
     attempt to extract the file data from position 575 in the
     archive instead of the value that is found in the directory
     entry read from the archive.  For example, here is some of
     the output of fiz when it acts on a damaged zoo archive:

     ****************
         2526: DIR  [changes] ==>   95
         2587: DATA
     ****************
         3909: DIR  [copyrite] ==> 1478
         3970: DATA
         4769: DATA
     ****************

     In such output, DIR indicates where fiz found a directory
     entry in the archive, and DATA indicates where fiz found
     file data in the archive.  Filenames located by fiz are
     enclosed in square brackets, and the notation "==>   95"
     indicates that the directory entry found by fiz at position
     2526 has a file data pointer to position 95.  (This is
     clearly wrong, since file data always occur in an archive
     after their directory entry.)  In actuality, fiz found file
     data at positions 2587, 3970, and 4769.  Since fiz found
     only two directory entries, and each directory entry
     corresponds to one file, one of the file data positions is
     an artifact.

     In this case, commands to try giving to zoo might be
     x@2526,2587 (extract beginning at position 2526, and get
     file data from position 2587), x@3090,3970 (extract at 3090,
     get data from 3970) and x@3909,4769 (extract at 3909, get
     data from 4769).  Once a correctly-matched directory
     entry/file data pair is found, zoo will in most cases syn-
     chronize with and correctly extract all files subsequently
     found in the archive.  Trial and error should allow all
     undamaged files to be extracted.  Also note that self-
     extracting archives created using sez (the Self-Extracting
     Zoo utility for MS-DOS), which are normally executed on an
     MS-DOS system for extraction, can be extracted on non-MSDOS
     systems using zoo's damaged-archive recovery method using
     the @ modifier.

     Wildcard handling

     Under the **IX family of operating systems, the shell nor-
     mally expands wildcards to a list of matching files.  Wild-
     cards that are meant to match files within an archive must
     therefore be escaped or quoted.  When selecting files to be
     added to an archive, wildcard conventions are as defined for
     the shell.  When selecting files from within an archive,
     wildcard handling is done by zoo as described below.

     Under MS-DOS and AmigaDOS, quoting of wildcards is not
     needed.  All wildcard expansion of filenames is done by zoo,
     and wildcards inside directory names are expanded only when
     listing or extracting files but not when adding them.

     The wildcard syntax interpreted by zoo is limited to the
     following characters.

     *    Matches any sequence of zero or more characters.

     ?    Matches any single character.

          Arbitrary combinations of * and ? are allowed.

     /    If a supplied pattern contains a slash anywhere in it,
          then the slash separating any directory prefix from the
          filename must be matched explicitly.  If a supplied
          pattern contains no slashes, the match is selective
          only on the filename.

     c-c  Two characters separated by a hyphen specify a charac-
          ter range.  All filenames beginning with those charac-
          ters will match.  The character range is meaningful
          only by itself or preceded by a directory name.  It is
          not specially interpreted if it is part of a filename.

     : and ;
          These characters are used to separate a filename from a
          generation number and are used when selecting specific
          generations of archived files.  If no generation char-
          acter is used, the filename specified matches only the
          latest generation of the file.  If the generation char-
          acter is specified, the filename and the generation are
          matched independently by zoo's wildcard mechanism.  If
          no generation is specified following the : or ; charac-
          ter, all generations of that file will match.  As a
          special case, a generation number of 0 matches only the
          latest generation of a file, while ^0 matches all gen-
          erations of a file except the latest one.  If no
          filename is specified preceding the generation charac-
          ter, all filenames will match.  As a corollary, the
          generation character by itself matches all generations
          of all files.

     MS-DOS users should note that zoo does not treat the dot as
     a special character, and it does not ignore characters fol-
     lowing an asterisk.  Thus * matches all filenames; *.*
     matches filenames containing a dot; *_* matches filenames
     containing an underscore;  and *z matches all filenames that
     end with the character z, whether or not they contain a dot.

     Usage hints

     The Novice command set in zoo is meant to provide an inter-
     face with functionality and format that will be familiar to
     users of other similar archive utilities.  In keeping with
     this objective, the Novice commands do not maintain or use
     any subdirectory information or allow the use of zoo's abil-
     ity to maintain multiple generations of files.  For this
     reason, users should switch to exclusively using the Expert
     commands as soon as possible.

     Although the Expert command set is quite large, it should be
     noted that in almost every case, all legal modifiers for a
     command are fully orthogonal.  This means that the user can
     select any combination of modifiers, and when they act
     together, they will have the intuitively obvious effect.
     Thus the user need only memorize what each modifier does,
     and then can combine them as needed without much further
     thought.

     For example, consider the a command which is used to add
     files to an archive.  By itself, it simply adds the speci-
     fied files.  To cause only already-archived files to be
     updated if their disk copies have been modified, it is only
     necessary to add the u modifier, making the command au.  To
     cause only new files (i.e., files not already in the
     archive) to be added, the n modifier is used to create the
     command an.  To cause both already-archived files to be
     updated and new files to be added, the u and n modifiers can
     be used together, giving the command aun.  Since the order
     of modifiers is not significant, the command could also be
     anu.

     Further, the c modifier can be used to cause zoo to prompt
     the user for a comment to attach to each file added.  And
     the f modifier can cause fast addition (addition without
     compression).  It should be obvious then that the command
     auncf will cause zoo to update already-archived files, add
     new files, prompt the user for comments, and do the addition
     of files without any compression.  Furthermore, if the user
     wishes to move files to the archive, i.e., delete the disk
     copy of each file after it is added to the archive, it is
     only necessary to add the M modifier to the command, so it
     becomes auncfM.  And if the user also wishes to cause the
     archive to be packed as part of the command, thus recovering
     space from any files that are replaced, the command can be
     modified to auncfMP by adding the P modifier that causes
     packing.

     Similarly, the archive listing commands can be built up by
     combining modifiers.  The basic command to list the contents
     of an archive is l.  If the user wants a fast columnized
     listing, the f modifier can be added to give the lf command.
     Since this listing will have a header giving the archive
     name and a trailer summarizing interesting information about
     the archive, such as the number of deleted files, the user
     may wish to "quieten" the listing by suppressing these;  the
     relevant modifier is q, which when added to the command
     gives lfq.  If the user wishes to see the **IX mode (file
     protection) bits, and also information about multiple gen-
     erations, the modifiers m (show mode bits) and g (show gen-
     eration information) can be added, giving the command lfqmg.
     If the user also wishes to see an attached archive comment,
     the modifier A (for archive) will serve.  Thus the command
     lfqmgA will give a fast columnized listing of the archive,
     suppressing any header and trailer, showing mode bits and
     generation information, and showing any comment attached to
     the archive as a whole.  If in addition individual comments
     attached to files are also needed, simply append the c
     modifier to the command, making it lfqmgAc.  The above com-
     mand will not show any deleted files, however;  to see them,
     use the d modifier, making the command lfqmgAcd (or double
     it as in lfqmgAcdd if only the deleted files are to be
     listed).  And if the user also wishes to see the CRC value
     for each file being listed, the modifier C will do this, as
     in the command lfqmgAcdC, which gives a fast columnized
     listing of all files, including deleted files, showing any
     archive comment and file comments, and file protection codes
     and generation information, as well as the CRC value of each
     file.

     Note that the above command lfqmgAcdC could also be abbrevi-
     ated to VfqmgdC because the command V is shorthand for lcA
     (archive listing with all comments shown).  Similarly the
     command v is shorthand for lA (archive listing with archive
     comment shown).  Both V and v can be used as modifiers to
     any of the other archive listing commands.

     Generations

     By default, zoo assumes that only the latest generation of a
     specified file is needed.  If generations other than the
     latest one need to be selected, this may be done by specify-
     ing them in the filename.  For example, the name stdio.h
     would normally refer to the latest generation of the file
     stdio.h stored in a zoo archive.  To get an archive listing
     showing all generations of stdio.h in the archive, the
     specification stdio.h:* could be used (enclosed in single
     quotes if necessary to protect the wildcard character * from
     the shell).  Also, stdio.h:0 selects only the latest genera-
     tion of stdio.h, while stdio.h:^0 selects all generations
     except the latest one.  The : character here separates the
     filename from the generation number, and the character * is
     a wildcard that matches all possible generations.  For con-
     venience, the generation itself may be left out, so that the
     name stdio.h: (with the : but without a generation number or
     a wildcard) matches all generations exactly as stdio.h:*
     does.

     If a generation is specified but no filename is present, as
     in :5, :*, or just :, all filenames of the specified genera-
     tion will be selected.  Thus :5 selects generation 5 of each
     file, and :* and : select all generations of all files.

⌨️ 快捷键说明

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