{
    "mode": "info",
    "parameter": "shar",
    "section": "",
    "url": "https://www.chedong.com/phpMan.php/info/shar/json",
    "generated": "2026-07-31T12:12:05Z",
    "sections": {
        "File: sharutils.info,  Node: shar Invocation,  Next: unshar Invocation,  Up: Basic": {
            "content": "",
            "subsections": [
                {
                    "name": "2.1 Invoking shar",
                    "content": "If no `file's are specified, the list of input files is read from\nstandard input.  Standard input must not be a terminal.  `shar' creates\n\"shell archives\" (or shar files) which are in text format and can be\nemailed.  These files may be unpacked later by executing them with\n`/bin/sh'.  The resulting archive is sent to standard out unless the\n`-o' option is given.  A wide range of features provide extensive\nflexibility in manufacturing shars and in specifying `shar'\n\"smartness\".  Archives may be fairly simple (`--vanilla-operation') or\nessentially a mailable `tar' archive.\n\nOptions may be specified in any order until a `file' argument is\nrecognized.  If the `--intermix-type' option has been specified, more\ncompression and encoding options will be recognized between the `file'\narguments.\n\nThough this program supports `uuencode'-d files, they are\ndeprecated.  If you are emailing files, please consider mime-encoded\nfiles.  If you do `uuencode', base64 is the preferred encoding method.\n\nThis section was generated by *AutoGen*, using the `agtexi-cmd'\ntemplate and the option descriptions for the `shar' program.  This\nsoftware is released under the GNU General Public License, version 3 or\nlater.\n\n* Menu:\n\n* shar usage::                  shar help/usage (`--help')\n* shar compression::            compression options\n* shar encoding::               encoding options\n* shar in-out::                 in-out options\n* shar headers::                headers options\n* shar xmit-defenses::          xmit-defenses options\n* shar shar-flavors::           shar-flavors options\n* shar internationalization::   internationalization options\n* shar feedback::               feedback options\n* shar config::                 presetting/configuring shar\n* shar exit status::            exit status\n* shar Authors::                Authors\n* shar Bugs::                   Bugs\n* shar Examples::               Examples\n* shar Warnings::               Warnings\n* shar See Also::               See Also\n"
                }
            ]
        },
        "File: sharutils.info,  Node: shar usage,  Next: shar compression,  Up: shar Invocation": {
            "content": "This is the automatically generated usage text for shar.\n\nThe text printed is the same whether selected with the `help' option\n(`--help') or the `more-help' option (`--more-help').  `more-help' will\nprint the usage text by passing it through a pager program.\n`more-help' is disabled on platforms without a working `fork(2)'\nfunction.  The `PAGER' environment variable is used to select the\nprogram, defaulting to `more'.  Both will exit with a status code of 0.\n\nshar (GNU sharutils) - create a shell archive\nUsage:  shar [ -<flag> [<val>] | --<name>[{=| }<val>] ]... [<file>...]\n\nSpecify compression:\n-p, --intermix-type        specify compression for input files\n- prohibits the option 'vanilla-operation'\n-C, --compactor=PROG       specify compaction (compression) program PROG\n- prohibits the option 'vanilla-operation'\n- may appear multiple times\n- it must be known to shar: xz gzip bzip2\n-g, --level-of-compression=LEVEL\npass LEVEL for compression\n- it must be in the range: 1 to 9\n\nSpecify file encoding methodology:\n-M, --mixed-uuencode       decide uuencoding for each file\n-B, --uuencode             treat all files as binary\n- an alternate for mixed-uuencode\n-T, --text-files           treat all files as text\n- an alternate for mixed-uuencode\n\nSpecifying file selection and output modes:\n-o, --output-prefix=str    print output to file PREFIX.nn\n-l, --whole-size-limit=SIZE\nsplit archive, not files, to SIZE\n- requires the option 'output-prefix'\n- is scalable with a suffix: k/K/m/M/g/G/t/T\n- it must lie in one of the ranges:\n8 to 1023, or 8192 to 4194304\n-L, --split-size-limit=SIZE\nsplit archive or files to SIZE\n- requires the option 'output-prefix'\n- is scalable with a suffix: k/K/m/M/g/G/t/T\n- it must lie in one of the ranges:\n8 to 1023, or 8192 to 4194304\n- an alternate for 'whole-size-limit'\n-I, --input-file-list=FILE read file list from FILE\n\nControlling the shar headers:\n-n, --archive-name=NAME    use NAME to document the archive\n-s, --submitter=NAME       override the submitter name with NAME\n-a, --net-headers          output Submitted-by: & Archive-name: headers\n- requires the option 'archive-name'\n-c, --cut-mark             start the shar with a cut line\n-t, --translate            translate messages in the script\n\nProtecting against transmission issues:\n--no-character-count   do not use `wc -c' to check size\n-D, --no-md5-digest        do not use md5sum digest to verify\n-F, --force-prefix         apply the prefix character on every line\n-d, --here-delimiter=DELIM use DELIM to delimit the files\n\nProducing different kinds of shars:\n-V, --vanilla-operation    produce very simple shars\n-P, --no-piping            use temporary files between programs\n-x, --no-check-existing    blindly overwrite existing files\n-X, --query-user           ask user before overwriting files\n- prohibits the option 'vanilla-operation'\n-m, --no-timestamp         do not restore modification times\n-Q, --quiet-unshar         avoid verbose messages at unshar time\n-f, --basename             restore in one directory, despite hierarchy\n\nInternationalization options:\n--no-i18n              do not internationalize\n--print-text-domain-dir  print directory with shar messages\n\nUser feedback/entertainment:\n-q, --quiet                do not output verbose messages\n--silent               an alias for the 'quiet' option\n\nVersion, usage and configuration options:\n-v, --version[=MODE]       output version information and exit\n-h, --help                 display extended usage information and exit\n-!, --more-help            extended usage information passed thru pager\n-R, --save-opts[=FILE]     save the option state to a config file FILE\n-r, --load-opts=FILE       load options from the config file FILE\n- disabled with '--no-load-opts'\n- may appear multiple times\n",
            "subsections": []
        },
        "Options are specified by doubled hyphens and their name or by a single": {
            "content": "hyphen and the flag character.",
            "subsections": []
        },
        "If no 'file's are specified, the list of input files is read from a": {
            "content": "standard input.  Standard input must not be a terminal.\n\nThe following option preset mechanisms are supported:\n- reading file $HOME/.sharrc\n\n'shar' creates \"shell archives\" (or shar files) which are in text format\nand can be emailed.  These files may be unpacked later by executing them\nwith '/bin/sh'.  The resulting archive is sent to standard out unless the\n'-o' option is given.  A wide range of features provide extensive\nflexibility in manufacturing shars and in specifying 'shar' \"smartness\".",
            "subsections": []
        },
        "Archives may be fairly simple ('--vanilla-operation') or essentially a": {
            "content": "mailable 'tar' archive.\n",
            "subsections": []
        },
        "Options may be specified in any order until a 'file' argument is": {
            "content": "recognized.  If the '--intermix-type' option has been specified, more\ncompression and encoding options will be recognized between the 'file'\narguments.\n",
            "subsections": []
        },
        "Though this program supports 'uuencode'-d files, they are deprecated.  If": {
            "content": "you are emailing files, please consider mime-encoded files.  If you do\n'uuencode', base64 is the preferred encoding method.\n\nPlease send bug reports to:  <bug-gnu-utils@gnu.org>\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: shar compression,  Next: shar encoding,  Prev: shar usage,  Up: shar Invocation": {
            "content": "Specifying compression.\n\nintermix-type option (-p).\n..........................\n\nThis is the \"specify compression for input files\" option.\n\nThis option has some usage constraints.  It:\n* must not appear in combination with any of the following options:\nvanilla-operation.\n\nAllow positional parameter options.  The compression method and\nencoding method options may be intermixed with file names.  Files named\nafter these options will be processed in the specified way.\n\ncompactor option (-C).\n......................\n\nThis is the \"specify compaction (compression) program\" option.  This\noption takes a string argument `PROGRAM'.\n\nThis option has some usage constraints.  It:\n* may appear an unlimited number of times.\n\n* must not appear in combination with any of the following options:\nvanilla-operation.\n\nThe `gzip', `bzip2' and `compress' compactor commands may be\nspecified by the program name as the option name, e.g. `--gzip'.  Those\noptions, however, are being deprecated.  There is also the `xz'\ncompactor now.  Specify `xz' with `-C xz' or `--compactor=xz'.\n\nSpecifying the compactor \"`none'\" will disable file compression.",
            "subsections": []
        },
        "Compressed files are never processed as plain text.  They are always": {
            "content": "uuencoded and the recipient must have `uudecode' to unpack them.\n\nSpecifying the compactor `compress' is deprecated.\n\nlevel-of-compression option (-g).\n.................................\n\nThis is the \"pass `level' for compression\" option.  This option takes a\nnumber argument `LEVEL'.  Some compression programs allow for a level\nof compression.  The default is `9', but this option allows you to\nspecify something else.  This value is used by `gzip', `bzip2' and\n`xz', but not `compress'.\n\nbzip2 option (-j).\n..................\n\nThis is the \"`bzip2' and `uuencode' files\" option.\n\nThis option has some usage constraints.  It:\n* may appear an unlimited number of times.\n\n`bzip2' compress and `uuencode' all files prior to packing.  The\nrecipient must have `uudecode' `bzip2' in order to unpack.\n\n*NOTE: THIS OPTION IS DEPRECATED*\n\ngzip option (-z).\n.................\n\nThis is the \"`gzip' and `uuencode' files\" option.\n\nThis option has some usage constraints.  It:\n* may appear an unlimited number of times.\n\n`gzip' compress and `uuencode' all files prior to packing.  The\nrecipient must have `uudecode' and `gzip' in order to unpack.\n\n*NOTE: THIS OPTION IS DEPRECATED*\n\ncompress option (-Z).\n.....................\n\nThis is the \"`compress' and `uuencode' files\" option.\n\nThis option has some usage constraints.  It:\n* may appear an unlimited number of times.\n\n* must be compiled in by defining `HAVECOMPRESS' during the\ncompilation.\n\n`compress' and `uuencode' all files prior to packing.  The recipient\nmust have `uudecode' and `compress' in order to unpack.\n\n*NOTE: THIS OPTION IS DEPRECATED*\n\nlevel-for-gzip option.\n......................\n\nThis is an alias for the `level-of-compression' option, *note the\nlevel-of-compression option documentation: shar level-of-compression.\n\nbits-per-code option (-b).\n..........................\n\nThis is the \"pass `bits' (default 12) to compress\" option.  This option\ntakes a string argument `BITS'.\n\nThis option has some usage constraints.  It:\n* must be compiled in by defining `HAVECOMPRESS' during the\ncompilation.\n\nThis is the compression factor used by the `compress' program.\n\n*NOTE: THIS OPTION IS DEPRECATED*\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: shar encoding,  Next: shar in-out,  Prev: shar compression,  Up: shar Invocation": {
            "content": "",
            "subsections": []
        },
        "Specifying file encoding methodology.  Files may be stored in the shar": {
            "content": "either as plain text or uuencoded.  By default, the program selects\nwhich by examining the file.  You may force the selection for all\nfiles.  In intermixed option/file mode, this setting may be changed\nduring processing.\n\nmixed-uuencode option (-M).\n...........................\n\nThis is the \"decide uuencoding for each file\" option.\n\nThis option has some usage constraints.  It:\n* is a member of the mixed-uuencode class of options.\n\nAutomatically determine if the files are text or binary and archive\ncorrectly.  Files found to be binary are uuencoded prior to packing.\nThis is the default behavior for `shar'.\n\nFor a file to be considered a text file instead of a binary file,\nall the following should be true:\n1. The file does not contain any ASCII control character besides <BS>\n(backspace), <HT> (horizontal tab), <LF> (new line) or <FF> (form\nfeed).\n\n2. The file contains no character with its eighth-bit set.\n\n3. The file contains no line beginning with the five letters \"`from\n'\", capitalized or not.  (Mail handling programs will often\ngratuitously insert a `>' character before it.)\n\n4. The file is either empty or ends with a <LF> (newline) byte.\n\n5. No line in the file contains more than 200 characters.  For\ncounting purpose, lines are separated by a <LF> (newline).\n\nuuencode option (-B).\n.....................\n\nThis is the \"treat all files as binary\" option.\n\nThis option has some usage constraints.  It:\n* is a member of the mixed-uuencode class of options.\n\nUse `uuencode' prior to packing all files.  This increases the size\nof the archive.  The recipient must have `uudecode' in order to unpack.\nCompressed files are always encoded.\n\ntext-files option (-T).\n.......................\n\nThis is the \"treat all files as text\" option.\n\nThis option has some usage constraints.  It:\n* is a member of the mixed-uuencode class of options.\n\nIf you have files with non-ascii bytes or text that some mail\nhandling programs do not like, you may find difficulties.  However, if\nyou are using FTP or SSH/SCP, the non-conforming text files should be\nokay.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: shar in-out,  Next: shar headers,  Prev: shar encoding,  Up: shar Invocation": {
            "content": "Specifying file selection and output modes.\n\noutput-prefix option (-o).\n..........................\n\nThis is the \"print output to file prefix.nn\" option.  This option takes\na string argument `PREFIX'.  Save the archive to files `prefix.01' thru\n`prefix.nn' instead of sending all output to standard out.  Must be\nspecified when the `--whole-size-limit' or `--split-size-limit' options\nare specified.\n\nWhen PREFIX contains a `%' character, PREFIX is then interpreted as\na `sprintf' format, which should be able to display a single decimal\nnumber.  When PREFIX does not contain such a `%' character, the string\n`.%02d' is internally appended.\n\nwhole-size-limit option (-l).\n.............................\n\nThis is the \"split archive, not files, to size\" option.  This option\ntakes a number argument `SIZE'.\n\nThis option has some usage constraints.  It:\n* is a member of the whole-size-limit class of options.\n\n* must appear in combination with the following options:\noutput-prefix.\n\nLimit the output file size to `size' bytes, but don't split input\nfiles.  If `size' is less than 1024, then it will be multiplied by\n1024.  The value may also be specified with a k, K, m or M suffix.  The\nnumber is then multiplied by 1000, 1024, 1000000, or 1048576,\nrespectively.  4M (4194304) is the maximum allowed.\n\nUnlike the `split-size-limit' option, this allows the recipient of\nthe shar files to unpack them in any order.\n\nsplit-size-limit option (-L).\n.............................\n\nThis is the \"split archive or files to size\" option.  This option takes\na number argument `SIZE'.\n\nThis option has some usage constraints.  It:\n* is a member of the whole-size-limit class of options.\n\n* must appear in combination with the following options:\noutput-prefix.\n\nLimit output file size to `size' bytes, splitting files if\nnecessary.  The allowed values are specified as with the\n`--whole-size-limit' option.\n\nThe archive parts created with this option must be unpacked in the\ncorrect order.  If the recipient of the shell archives wants to put all\nof them in a single email folder (file), they will have to be saved in\nthe correct order for `unshar' to unpack them all at once (using one of\nthe split archive options).  *Note unshar Invocation::.\n\ninput-file-list option (-I).\n............................\n\nThis is the \"read file list from a file\" option.  This option takes a\nstring argument `FILE'.  This option causes `file' to be reopened as\nstandard input.  If no files are found on the input line, then standard\ninput is read for input file names.  Use of this option will prohibit\ninput files from being listed on the command line.\n\nInput must be in a form similar to that generated by `find', one\nfilename per line.  This switch is especially useful when the command\nline will not hold the list of files to be archived.\n\nIf the `--intermix-type' option is specified on the command line,\nthen the compression options may be included in the standard input on\nlines by themselves and no file name may begin with a hyphen.\n\nFor example:\n{ echo --compact xz\nfind . -type f -print | sort\n} | shar -S -p -L50K -o /somewhere/big\n\nstdin-file-list option (-S).\n............................\n\nThis is the \"read file list from standard input\" option.  This option\nis actually a no-op.  It is a wrapper for `--input-file-list=-'.\n\n*NOTE: THIS OPTION IS DEPRECATED*\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: shar headers,  Next: shar xmit-defenses,  Prev: shar in-out,  Up: shar Invocation": {
            "content": "Controlling the shar headers.\n\narchive-name option (-n).\n.........................\n\nThis is the \"use `name' to document the archive\" option.  This option\ntakes a string argument `NAME'.  Name of archive to be included in the\nsubject header of the shar files.  See the `--net-headers' option.\n\nsubmitter option (-s).\n......................\n\nThis is the \"override the submitter name\" option.  This option takes a\nstring argument `WHO@WHERE'.  `shar' will normally determine the\nsubmitter name by querying the system.  Use this option if it is being\ndone on behalf of another.\n\nnet-headers option (-a).\n........................\n\nThis is the \"output submitted-by: & archive-name: headers\" option.\n\nThis option has some usage constraints.  It:\n* must appear in combination with the following options:\narchive-name.\n\nAdds specialized email headers:\nSubmitted-by: who@where\nArchive-name: name/part##\nThe who@where is normally derived, but can be specified with the\n`--submitter' option.  The name must be provided with the\n`--archive-name' option.  If the archive name includes a slash (`/')\ncharacter, then the `/part##' is omitted.  Thus `-n xyzzy' produces:\nxyzzy/part01\nxyzzy/part02\n\nwhile `-n xyzzy/patch' produces:\nxyzzy/patch01\nxyzzy/patch02\n\nand `-n xyzzy/patch01.' produces:\nxyzzy/patch01.01\nxyzzy/patch01.02\n\ncut-mark option (-c).\n.....................\n\nThis is the \"start the shar with a cut line\" option.  A line saying\n'Cut here' is placed at the start of each output file.\n\ntranslate option (-t).\n......................\n\nThis is the \"translate messages in the script\" option.  Translate\nmessages in the script.  If you have set the `LANG' environment\nvariable, messages printed by `shar' will be in the specified language.",
            "subsections": []
        },
        "The produced script will still be emitted using messages in the lingua": {
            "content": "franca of the computer world: English.  This option will cause the\nscript messages to appear in the languages specified by the `LANG'\nenvironment variable set when the script is produced.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: shar xmit-defenses,  Next: shar shar-flavors,  Prev: shar headers,  Up: shar Invocation": {
            "content": "Protecting against transmission issues.\n\nno-character-count option.\n..........................\n\nThis is the \"do not use `wc -c' to check size\" option.  Do NOT check\neach file with 'wc -c' after unpack.  The default is to check.\n\nno-md5-digest option (-D).\n..........................\n\nThis is the \"do not use `md5sum' digest to verify\" option.  Do not\nuse `md5sum' digest to verify the unpacked files.  The default is to\ncheck.\n\nforce-prefix option (-F).\n.........................\n\nThis is the \"apply the prefix character on every line\" option.  Forces\nthe prefix character to be prepended to every line, even if not\nrequired.  This option may slightly increase the size of the archive,\nespecially if `--uuencode' or a compression option is used.\n\nhere-delimiter option (-d).\n...........................\n\nThis is the \"use delim to delimit the files\" option.  This option takes\na string argument `DELIM'.  Use DELIM to delimit the files in the shar\ninstead of SHAREOF.  This is for those who want to personalize their\nshar files.  The delimiter will always be prefixed and suffixed with\nunderscores.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: shar shar-flavors,  Next: shar internationalization,  Prev: shar xmit-defenses,  Up: shar Invocation": {
            "content": "Producing different kinds of shars.\n\nvanilla-operation option (-V).\n..............................\n\nThis is the \"produce very simple shars\" option.  This option produces\n`vanilla' shars which rely only upon the existence of `echo', `test'\nand `sed' in the unpacking environment.\n\nIt changes the default behavior from mixed mode (`--mixed-uuencode')\nto text mode (`--text-files').  Warnings are produced if options are\nspecified that will require decompression or decoding in the unpacking\nenvironment.\n\nno-piping option (-P).\n......................\n\nThis is the \"use temporary files between programs\" option.  In the\n`shar' file, use a temporary file to hold file contents between\nunpacking stages instead of using pipes.  This option is mandatory when\nyou know the unpacking will happen on systems that do not support pipes.\n\nno-check-existing option (-x).\n..............................\n\nThis is the \"blindly overwrite existing files\" option.  Create the\narchive so that when processed it will overwrite existing files without\nchecking first.  If neither this option nor the `--query-user' option\nis specified, the unpack will not overwrite pre-existing files.  In all\ncases, however, if `--cut-mark' is passed as a parameter to the script\nwhen unpacking, then existing files will be overwritten unconditionally.\n\nsh shar-archive-file -c\n\nquery-user option (-X).\n.......................\n\nThis is the \"ask user before overwriting files\" option.\n\nThis option has some usage constraints.  It:\n* must not appear in combination with any of the following options:\nvanilla-operation.\n\nWhen unpacking, interactively ask the user if files should be\noverwritten.  Do not use for shars submitted to the net.\n\nUse of this option produces shars which will cause problems with\nsome unshar-style procedures, particularly when used together with\nvanilla mode (`--vanilla-operation').  Use this feature mainly for\narchives to be passed among agreeable parties.  Certainly, `-X' is\nnot for shell archives which are to be submitted to Usenet or other\npublic networks.\n\nThe problem is that `unshar' programs or procedures often feed\n`/bin/sh' from its standard input, thus putting `/bin/sh' and the shell\narchive script in competition for input lines.  As an attempt to\nalleviate this problem, `shar' will try to detect if `/dev/tty' exists\nat the receiving site and will use it to read user replies.  But this\ndoes not work in all cases, it may happen that the receiving user will\nhave to avoid using `unshar' programs or procedures, and call `/bin/sh'\ndirectly.  In vanilla mode, using `/dev/tty' is not even attempted.\n\nno-timestamp option (-m).\n.........................\n\nThis is the \"do not restore modification times\" option.  Avoid\ngenerating 'touch' commands to restore the file modification dates when\nunpacking files from the archive.\n\nWhen file modification times are not preserved, project build\nprograms like \"make\" will see built files older than the files they get\nbuilt from.  This is why, when this option is not used, a special\neffort is made to restore timestamps.\n\nquiet-unshar option (-Q).\n.........................\n\nThis is the \"avoid verbose messages at unshar time\" option.  Verbose\nOFF.  Disables the inclusion of comments to be output when the archive\nis unpacked.\n\nbasename option (-f).\n.....................\n\nThis is the \"restore in one directory, despite hierarchy\" option.",
            "subsections": []
        },
        "Restore by the base file name only, rather than path.  This option": {
            "content": "causes only file names to be used, which is useful when building a shar\nfrom several directories, or another directory.  Note that if a\ndirectory name is passed to shar, the substructure of that directory\nwill be restored whether this option is specified or not.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: shar internationalization,  Next: shar feedback,  Prev: shar shar-flavors,  Up: shar Invocation": {
            "content": "Internationalization options.\n\nno-i18n option.\n...............\n\nThis is the \"do not internationalize\" option.  Do not produce\ninternationalized shell archives, use default English messages.  By\ndefault, shar produces archives that will try to output messages in the\nunpackers preferred language (as determined by the LANG/LCMESSAGES\nenvironmental variables) when they are unpacked.  If no message file\nfor the unpackers language is found at unpack time, messages will be in\nEnglish.\n\nprint-text-domain-dir option.\n.............................\n\nThis is the \"print directory with shar messages\" option.  Prints the\ndirectory shar looks in to find messages files for different languages,\nthen immediately exits.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: shar feedback,  Next: shar config,  Prev: shar internationalization,  Up: shar Invocation": {
            "content": "User feedback/entertainment.\n\nquiet option (-q).\n..................\n\nThis is the \"do not output verbose messages\" option.  omit progress\nmessages.\n\nsilent option.\n..............\n\nThis is an alias for the `quiet' option, *note the quiet option\ndocumentation: shar quiet.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: shar config,  Next: shar exit status,  Prev: shar feedback,  Up: shar Invocation": {
            "content": "",
            "subsections": []
        },
        "Any option that is not marked as not presettable may be preset by": {
            "content": "loading values from configuration (\"rc\" or \"ini\") files.\n\n`libopts' will search in `$HOME' for configuration (option) data.  The\nenvironment variable `HOME, ' is expanded and replaced when the program\nruns If this is a plain file, it is simply processed.  If it is a\ndirectory, then a file named `.sharrc' is searched for within that\ndirectory.\n\nConfiguration files may be in a wide variety of formats.  The basic\nformat is an option name followed by a value (argument) on the same\nline.  Values may be separated from the option name with a colon, equal\nsign or simply white space.  Values may be continued across multiple\nlines by escaping the newline with a backslash.\n\nMultiple programs may also share the same initialization file.",
            "subsections": []
        },
        "Common options are collected at the top, followed by program specific": {
            "content": "segments.  The segments are separated by lines like:\n[SHAR]\nor by\n<?program shar>\nDo not mix these styles within one configuration file.\n\nCompound values and carefully constructed string values may also be\nspecified using XML syntax:\n<option-name>\n<sub-opt>...&lt;...&gt;...</sub-opt>\n</option-name>\nyielding an `option-name.sub-opt' string value of\n\"...<...>...\"\n`AutoOpts' does not track suboptions.  You simply note that it is a\nhierarchicly valued option.  `AutoOpts' does provide a means for\nsearching the associated name/value pair list (see: optionFindValue).\n\nThe command line options relating to configuration and/or usage help\nare:\n\nversion (-v)\n............\n",
            "subsections": []
        },
        "Print the program version to standard out, optionally with licensing": {
            "content": "information, then exit 0.  The optional argument specifies how much\nlicensing detail to provide.  The default is to print the license name\nwith the version.  The licensing infomation may be selected with an\noption argument.  Only the first letter of the argument is examined:\n\n`version'\nOnly print the version.\n\n`copyright'\nName the copyright usage licensing terms.  This is the default.\n\n`verbose'\nPrint the full copyright usage licensing terms.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: shar exit status,  Next: shar Authors,  Prev: shar config,  Up: shar Invocation": {
            "content": "One of the following exit values will be returned:\n`0 (EXITSUCCESS)'\nSuccessful program execution.\n\n`1 (EXITOPTIONERROR)'\nThe command options were misconfigured.\n\n`2 (EXITFILENOTFOUND)'\na specified input could not be found\n\n`3 (EXITCANNOTOPENDIR)'\nopen/close of specified directory failed\n\n`4 (EXITFAILED)'\nResource limit/miscelleaneous shar command failure\n\n`63 (EXITBUG)'\nThere is a shar command bug.  Please report it.\n\n`66 (EXNOINPUT)'\nA specified configuration file could not be loaded.\n\n`70 (EXSOFTWARE)'\nlibopts had an internal operational error.  Please report it to\nautogen-users@lists.sourceforge.net.  Thank you.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: shar Authors,  Next: shar Bugs,  Prev: shar exit status,  Up: shar Invocation": {
            "content": "The `shar' and `unshar' programs is the collective work of many\nauthors.  Many people contributed by reporting problems, suggesting\nvarious improvements or submitting actual code.  A list of these people\nis in the `THANKS' file in the sharutils distribution.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: shar Bugs,  Next: shar Examples,  Prev: shar Authors,  Up: shar Invocation": {
            "content": "Please put `sharutils' in the subject line for emailed bug reports.  It\nhelps to spot the message.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: shar Examples,  Next: shar Warnings,  Prev: shar Bugs,  Up: shar Invocation": {
            "content": "",
            "subsections": []
        },
        "The first shows how to make a shell archive out of all C program": {
            "content": "sources.  The second produces a shell archive with all `.c' and `.h'\nfiles, which unpacks silently.  The third gives a shell archive of all\nuuencoded `.arc' files, into numbered files starting from `arc.sh.01'.",
            "subsections": []
        },
        "The last example gives a shell archive which will use only the file": {
            "content": "names at unpack time.\n\nshar *.c > cprog.shar\nshar -Q *.[ch] > cprog.shar\nshar -B -l28 -oarc.sh *.arc\nshar -f /lcl/src/u*.c > u.sh\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: shar Warnings,  Next: shar See Also,  Prev: shar Examples,  Up: shar Invocation": {
            "content": "",
            "subsections": []
        },
        "No attempt is made to restore the protection and modification dates for": {
            "content": "directories, even if this is done by default for files.  Thus, if a\ndirectory is given to `shar', the protection and modification dates of\ncorresponding unpacked directory may not match those of the original.\n\nIf a directory is passed to shar, it may be scanned more than once,\nto conserve memory.  Therefore, do not change the directory contents\nwhile shar is running.\n\nBe careful that the output file(s) are not included in the inputs or\nshar may loop until the disk fills up.  Be particularly careful when a\ndirectory is passed to shar that the output files are not in that\ndirectory or a subdirectory of it.\n\nUse of the compression and encoding options will slow the archive\nprocess, perhaps considerably.\n\nUse of the `--query-user' produces shars which will cause problems\nwith many unshar procedures.  Use this feature only for archives to be\npassed among agreeable parties.  Certainly, `query-user' is NOT for\nshell archives which are to be distributed across the net.  The use of\ncompression in net shars will cause you to be flamed off the earth.\nNot using the `--no-timestamp' or `--force-prefix' options may also get\nyou occasional complaints.  Put these options into your `~/.sharrc'\nfile.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: shar See Also,  Prev: shar Warnings,  Up: shar Invocation": {
            "content": "unshar(1)\n",
            "subsections": []
        }
    },
    "flags": [],
    "examples": [],
    "see_also": []
}