home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 9 Archive / 09-Archive.zip / unzip52.zip / vms / unzipsfx.hlp < prev    next >
Text File  |  1994-08-11  |  10KB  |  234 lines

  1. 1 UNZIPSFX
  2.  
  3.      unzipsfx  -  self-extracting  stub  for  prepending  to  ZIP
  4.      archives
  5.  
  6.      <name  of  unzipsfx+archive   combo>   [-cfptuz[ajnoqsCLV$]]
  7.      [file(s) ...] [-x xfile(s) ...]
  8.  
  9.      unzipsfx is a modified version of unzip designed  to  be
  10.      prepended  to  existing  ZIP archives in order to form self-
  11.      extracting archives.  Instead of taking its  first  non-flag
  12.      argument  to  be  the  zipfile(s)  to be extracted, unzipsfx
  13.      seeks itself under the name by  which  it  was  invoked  and
  14.      tests  or  extracts  the  contents  of the appended archive.
  15.      Because the executable stub adds bulk to  the  archive  (the
  16.      whole  purpose  of  which  is to be as small as possible), a
  17.      number of the regular version's less-vital capabilities have
  18.      been  removed.   Among these are the usage (or help) screen,
  19.      the listing and diagnostic functions (-l and -v), the  abil-
  20.      ity to decompress older compression formats (the ``reduce,''
  21.      ``shrink'' and ``implode''  methods),  and  the  ability  to
  22.      extract  to a directory other than the current one.  Decryp-
  23.      tion is supported as a compile-time  option  but  should  be
  24.      avoided  unless  the  attached  archive  contains  encrypted
  25.      files.
  26.  
  27.      Note that self-extracting archives made with unzipsfx are no
  28.      more  (or  less) portable across different operating systems
  29.      than is the unzip executable itself.   In  general  a  self-
  30.      extracting  archive  made  on  a particular Unix system, for
  31.      example, will only self-extract under  the  same  flavor  of
  32.      Unix.  Regular unzip may still be used to extract the embed-
  33.      ded archive as with any normal  zipfile,  although  it  will
  34.      generate  a harmless warning about extra bytes at the begin-
  35.      ning of the zipfile.
  36.  
  37.  
  38.  
  39. [file(s)]
  40.  
  41.           An optional list of archive members  to  be  processed.
  42.           Regular  expressions  (wildcards)  similar  to those in
  43.           Unix egrep(1) may be used to  match  multiple  members.
  44.           These wildcards may contain:
  45.  
  46.           *    matches a sequence of 0 or more characters
  47.  
  48.           ?    matches exactly 1 character
  49.  
  50.           [...]
  51.                matches any  single  character  found  inside  the
  52.                brackets;  ranges  are  specified  by  a beginning
  53.                character, a hyphen, and an ending character.   If
  54.                an  exclamation point or a caret (`!' or `^') fol-
  55.                lows the left bracket, then the range  of  charac-
  56.                ters within the brackets is complemented (that is,
  57.                anything except the characters inside the brackets
  58.                is considered a match).
  59.  
  60.           (Be sure to quote any character which  might  otherwise
  61.           be  interpreted  or  modified  by the operating system,
  62.           particularly under Unix and VMS.)
  63.  
  64. [-x xfile(s)]
  65.  
  66.           An optional list of archive members to be excluded from
  67.           processing.   Since wildcard characters match directory
  68.           separators (`/'), this option may be  used  to  exclude
  69.           any  files  which  are in subdirectories.  For example,
  70.           ``unzip foo *.[ch] -x */*'' would extract all C  source
  71.           files  in the main directory, but none in any subdirec-
  72.           tories.  Without the -x option, all C source  files  in
  73.           all directories within the zipfile would be extracted.
  74.  
  75. 2 Options
  76.  
  77.      unzipsfx supports the following unzip options:   -c  and
  78.      -p  (extract  to standard output/screen), -f and -u (freshen
  79.      and  update  existing  files  upon  extraction),  -t   (test
  80.      archive) and -z (print archive comment).  All normal listing
  81.      options (-l, -v and -Z) have been removed, but  the  testing
  82.      option (-t) may be used as a ``poor man's'' listing.  Alter-
  83.      natively, those creating self-extracting archives  may  wish
  84.      to include a short listing in the zipfile comment.
  85.  
  86.      See unzip for  a  more  complete  description  of  these
  87.      options.
  88.  
  89.      MODIFIERS
  90.  
  91.      unzipsfx currently supports  all  unzip  modifiers:   -a
  92.      (convert  text  files),  -n (never overwrite), -o (overwrite
  93.      without prompting), -q (operate quietly),  -C  (match  names
  94.      case-insenstively), -L (convert uppercase-OS names to lower-
  95.      case), -j (junk paths) and -V (retain version numbers); plus
  96.      the   following   operating-system   specific  options:   -X
  97.      (restore VMS owner/protection info), -s (convert  spaces  in
  98.      filenames  to  underscores  [DOS, OS/2, NT]) and -$ (restore
  99.      volume label [DOS, OS/2, NT, Amiga]).
  100.  
  101.      (Support for regular ASCII text-conversion may be removed in
  102.      future versions, since it is simple enough for the archive's
  103.      creator to ensure that text files have the appropriate  for-
  104.      mat for the local OS.  EBCDIC conversion will of course con-
  105.      tinue to be supported since the zipfile format implies ASCII
  106.      storage of text files.)
  107.  
  108.      See unzip for  a  more  complete  description  of  these
  109.      modifiers.
  110.  
  111. 2 Environment_options
  112.  
  113.      unzipsfx uses the same environment  variables  as  unzip
  114.      does,  although  this  is likely to be an issue only for the
  115.      person creating and  testing  the  self-extracting  archive.
  116.      See unzip for details.
  117.  
  118. 2 Decryption
  119.  
  120.      Decryption is supported exactly as in  unzip;  that  is,
  121.      interactively with a non-echoing prompt for the password(s).
  122.      See unzip for details.  Once again,  note  that  if  the
  123.      archive  has  no encrypted files there is no reason to use a
  124.      version of unzipsfx with decryption support; that only  adds
  125.      to the size of the archive.
  126.  
  127. 2 Examples
  128.  
  129.      To create a self-extracting archive letters from  a  regular
  130.      zipfile letters.zip and change the new archive's permissions
  131.      to be world-executable under Unix:
  132.  
  133.          cat unzipsfx letters.zip > letters
  134.          chmod 755 letters
  135.  
  136.      To create the same archive under MS-DOS, OS/2  or  NT  (note
  137.      the use of the /b [binary] option to the copy command):
  138.  
  139.          copy /b unzipsfx.exe+letters.zip letters.exe
  140.  
  141.      Under VMS:
  142.  
  143.          copy unzipsfx.exe,letters.zip letters.exe
  144.          letters == "$currentdisk:[currentdir]letters.exe"
  145.  
  146.      (The VMS append command may also be used.  The  second  com-
  147.      mand installs the new program as a ``foreign command'' capa-
  148.      ble of taking  arguments.)  To  test  (or  list)  the  newly
  149.      created self-extracting archive:
  150.  
  151.          letters -t
  152.  
  153.      To test letters quietly, printing  only  a  summary  message
  154.      indicating whether the archive is OK or not:
  155.  
  156.          letters -tq
  157.  
  158.      To extract the complete contents into the current directory,
  159.      recreating all files and subdirectories as necessary:
  160.  
  161.          letters
  162.  
  163.      To extract only the README  file  to  standard  output  (the
  164.      screen):
  165.  
  166.          letters -c README
  167.  
  168.      To print only the zipfile comment:
  169.  
  170.          letters -z
  171.  
  172. 2 Limitations
  173.  
  174.      The principle and fundamental limitation of unzipsfx is that
  175.      it  is  not  portable across architectures or operating sys-
  176.      tems, and therefore neither are the resulting archives.  For
  177.      some  architectures  there  is  limited portability, however
  178.      (e.g., between some flavors of Intel-based Unix).
  179.  
  180.      unzipsfx has no knowledge of the user's PATH, so in  general
  181.      an  archive  must either be in the current directory when it
  182.      is invoked, or else a full or relative path must  be  given.
  183.      If  a  user attempts to extract the archive from a directory
  184.      in the PATH other than the current one, unzipsfx will  print
  185.      a  warning  to  the  effect, ``can't find myself.''  This is
  186.      always true under Unix and may be true in some  cases  under
  187.      MS-DOS,  depending  on  the compiler used (Microsoft C fully
  188.      qualifies the program name, but other  compilers  may  not).
  189.      Under OS/2 and NT there are operating-system calls available
  190.      which provide the full path name,  so  the  archive  may  be
  191.      invoked  from anywhere in the user's path.  The situation is
  192.      not known for Atari TOS, MacOS, etc.
  193.  
  194.      As noted above, a number of the normal  unzip  functions
  195.      have  been removed in order to make unzipsfx smaller:  usage
  196.      and diagnostic info, listing  functions  and  extraction  to
  197.      other directories.  Also, only stored and deflated files are
  198.      supported.  The latter  limitation  is  mainly  relevant  to
  199.      those who create SFX archives, however.
  200.  
  201.      VMS users must know how to set up  self-extracting  archives
  202.      as  foreign  commands  in  order  to  use  any of unzipsfx's
  203.      options.  This is not necessary for simple  extraction,  but
  204.      the command to do so then becomes, e.g., ``run letters'' (to
  205.      continue the examples given above).
  206.  
  207.      unzipsfx is not supported on the Amiga because  of  the  way
  208.      the  loader  works;  the  entire  archive  contents would be
  209.      loaded into memory by default.  It may be possible  to  work
  210.      around this by defining the attached archive to be a ``debug
  211.      hunk,'' but compatibility problems between the ROM levels of
  212.      older  Amigas  and  newer  ones are likely to cause problems
  213.      regardless.
  214.  
  215.      All current bugs in unzip exist in unzipsfx as well.
  216.  
  217. 2 Diagnostics
  218.  
  219.      unzipsfx's exit status (error level) is identical to that of
  220.      unzip; see the corresponding man page.
  221.  
  222. 2 See_also
  223.  
  224.      funzip, unzip, zip,  zipcloak,  zipgrep,
  225.      zipinfo, zipnote, zipsplit
  226.  
  227. 2 Authors
  228.  
  229.      Greg Roelofs was responsible for the basic modifications  to
  230.      UnZip  necessary  to create UnZipSFX.  See unzip for the
  231.      current list of zip-bugs authors, or the  file  CONTRIBS  in
  232.      the  UnZip source distribution for the full list of Info-ZIP
  233.      contributors.
  234.