{
    "mode": "info",
    "parameter": "sharutils",
    "section": "",
    "url": "https://www.chedong.com/phpMan.php/info/sharutils/json",
    "generated": "2026-11-15T14:56:02Z",
    "sections": {
        "File: sharutils.info,  Node: Top,  Next: Introduction,  Prev: (dir),  Up: (dir)": {
            "content": "",
            "subsections": []
        },
        "GNU `shar' utilities": {
            "content": "GNU `shar' makes so-called shell archives out of many files,\npreparing them for transmission by electronic mail services, while\n`unshar' helps unpacking shell archives after reception.  Other tools\nhelp using `shar' with the electronic mail system, and even allow\nsynchronization of remote directory trees.  This is release 4.15.2.\n\n* Menu:\n\n* Introduction::                Introduction to this toolset\n* Basic::                       The basic `shar' utilities\n* GNU Free Documentation License:: GNU Free Documentation License\n\n--- The Detailed Node Listing ---\n\nThe basic `shar' utilities\n\n* shar Invocation::             Invoking the `shar' program\n* unshar Invocation::           Invoking the `unshar' program\n* uuencode Invocation::         Invoking the `uuencode' program\n* uudecode Invocation::         Invoking the `uudecode' program\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: Introduction,  Next: Basic,  Prev: Top,  Up: Top": {
            "content": "",
            "subsections": []
        },
        "1 Introduction to this toolset": {
            "content": "GNU `uuencode' and `uudecode' have an history which roots are lost in\nages, and we will not even try to trace it.  The current versions were\nbrought into GNU by Ian Lance Taylor, and later modernized by Ulrich\nDrepper.  GNU `shar' surely has a long history, too.  All along this\nlong road, numerous users contributed various improvements.  The file\n`THANKS' in the distribution, as far as we know, contain the names of\nall contributors we could identify, and for which email addresses are\nseemingly valid.\n\nPlease help us getting the history straight, for the following\ninformation is somewhat approximative.  James Gosling wrote the public\ndomain `shar 1.x'.  William Davidsen rewrote it as `shar 2.x'.  Warren\nTucker implemented modifications and called it `shar 3.x'.  Richard",
            "subsections": []
        },
        "Gumpertz maintained it until 1990.  Franc,ois Pinard, from the public": {
            "content": "domain `shar 3.49', made `GNU shar 4.x', in 1994.  Some modules and\nother code sections were freely borrowed from other GNU distributions,\nbringing this `shar' under the terms of the GNU General Public License.\n\nYour feedback helps us to make a better and more portable product.",
            "subsections": []
        },
        "Mail suggestions and bug reports (including documentation errors) for": {
            "content": "these programs to `bug-gnu-utils@prep.ai.mit.edu'.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: Basic,  Next: GNU Free Documentation License,  Prev: Introduction,  Up: Top": {
            "content": "",
            "subsections": []
        },
        "2 The basic `shar' utilities": {
            "content": "GNU `shar' makes so-called shell archives out of many files, preparing\nthem for transmission by electronic mail services.  A \"shell archive\"\nis a collection of files that can be unpacked by `/bin/sh'.  A wide\nrange of features provide extensive flexibility in manufacturing shars\nand in specifying shar smartness.  For example, `shar' may compress\nfiles, uuencode binary files, split long files and construct multi-part\nmailings, ensure correct unsharing order, and provide simplistic\nchecksums.  *Note shar Invocation::.\n\nGNU `unshar' scans a set of mail messages looking for the start of\nshell archives.  It will automatically strip off the mail headers and\nother introductory text.  The archive bodies are then unpacked by a\ncopy of the shell.  `unshar' may also process files containing\nconcatenated shell archives.  *Note unshar Invocation::.\n\n* Menu:\n\n* shar Invocation::             Invoking the `shar' program\n* unshar Invocation::           Invoking the `unshar' program\n* uuencode Invocation::         Invoking the `uuencode' program\n* uudecode Invocation::         Invoking the `uudecode' program\n",
            "subsections": []
        },
        "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.\nIf no 'file'(s) are provided, then standard input is decoded.\n\nThe following option preset mechanisms are supported:\n- reading file $HOME/.sharrc\n\n'uudecode' transforms uuencoded files into their original form.\n",
            "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[UUDECODE]\nor by\n<?program uudecode>\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": []
        },
        "File: sharutils.info,  Node: unshar Invocation,  Next: uuencode Invocation,  Prev: shar Invocation,  Up: Basic": {
            "content": "",
            "subsections": [
                {
                    "name": "2.2 Invoking unshar",
                    "content": ""
                }
            ]
        },
        "Unshar scans the input files (typically email messages) looking for the": {
            "content": "start of a shell archive.  If no files are given, then standard input\nis processed instead.  It then passes each archive discovered through\nan invocation of the shell program to unpack it.\n\nThis section was generated by *AutoGen*, using the `agtexi-cmd'\ntemplate and the option descriptions for the `unshar' program.  This\nsoftware is released under the GNU General Public License, version 3 or\nlater.\n\n* Menu:\n\n* unshar usage::                  unshar help/usage (`--help')\n* unshar directory::              directory option (-d)\n* unshar overwrite::              overwrite option (-c)\n* unshar force::                  force option (-f)\n* unshar split-at::               split-at option (-E)\n* unshar exit-0::                 exit-0 option (-e)\n* unshar debug::                  debug option (-D)\n* unshar config::                 presetting/configuring unshar\n* unshar exit status::            exit status\n* unshar Authors::                Authors\n* unshar Bugs::                   Bugs\n* unshar See Also::               See Also\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: unshar usage,  Next: unshar directory,  Up: unshar Invocation": {
            "content": "This is the automatically generated usage text for unshar.\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\nunshar (GNU sharutils) - unpack a shar archive\nUsage:  unshar [ -<flag> [<val>] | --<name>[{=| }<val>] ]... [<file>...]\n\n-d, --directory=DIR        unpack into the directory DIR\n-c, --overwrite            overwrite any pre-existing files\n-f, --force                an alias for the 'overwrite' option\n-E, --split-at=SPLIT-PAT   split input on SPLIT-PAT lines\n-e, --exit-0               split input on \"exit 0\" lines\n- prohibits the option 'split-at'\n-D, --debug                debug the shell code\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 the config file FILE\n-r, --load-opts=FILE       load options from the config file FILE\n- disabled as '--no-load-opts'\n- may appear multiple times\n",
            "subsections": []
        },
        "If no arguments are provided, input arguments are read from stdin,": {
            "content": "one per line; blank and '#'-prefixed lines are comments.\n'stdin' may not be a terminal (tty).\n\nThe following option preset mechanisms are supported:\n- reading file $HOME/.sharrc\n\n'unshar' scans the input files (typically email messages) looking for the\nstart of a shell archive.  If no files are given, then standard input is\nprocessed instead.  It then passes each archive discovered through an\ninvocation of the shell program to unpack it.\n\nPlease send bug reports to:  <bug-gnu-utils@gnu.org>\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: unshar directory,  Next: unshar overwrite,  Prev: unshar usage,  Up: unshar Invocation": {
            "content": "This is the \"unpack into the directory `dir'\" option.  This option\ntakes a string argument `dir'.  The input file names are relative to\nthe current directory when the program was started.  This option tells\n`unshar' to insert a `cd <dir>' commad at the start of the `shar' text\nwritten to the shell.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: unshar overwrite,  Next: unshar force,  Prev: unshar directory,  Up: unshar Invocation": {
            "content": "This is the \"overwrite any pre-existing files\" option.  This option is\npassed through as an option to the shar file.  Many shell archive\nscripts accept a `-c' argument to indicate that existing files should\nbe overwritten.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: unshar force,  Next: unshar split-at,  Prev: unshar overwrite,  Up: unshar Invocation": {
            "content": "This is an alias for the `overwrite' option, *note the overwrite option\ndocumentation: unshar overwrite.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: unshar split-at,  Next: unshar exit-0,  Prev: unshar force,  Up: unshar Invocation": {
            "content": "This is the \"split input on SPLIT-MARK lines\" option.  This option\ntakes a string argument `split-mark'.  With this option, `unshar'\nisolates each different shell archive from the others which have been\nplaced in the same file, unpacking each in turn, from the beginning of\nthe file to the end.  Its proper operation relies on the fact that many\nshar files are terminated by a readily identifiable string at the start\nof the last line.\n\nFor example, noticing that most `.signatures' have a double hyphen\n(\"-\") on a line right before them, one can then sometimes use\n`--split-at=--'.  The signature will then be skipped, along with the\nheaders of the following message.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: unshar exit-0,  Next: unshar debug,  Prev: unshar split-at,  Up: unshar Invocation": {
            "content": "This is the \"split input on \"exit 0\" lines\" option.\n\nThis option has some usage constraints.  It:\n* must not appear in combination with any of the following options:\nsplit-at.\n\nMost shell archives end with a line consisting of simply \"exit 0\".\nThis option is equivalent to (and conflicts with) `--split-at=\"exit 0\"'.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: unshar debug,  Next: unshar config,  Prev: unshar exit-0,  Up: unshar Invocation": {
            "content": "This is the \"debug the shell code\" option.  \"set -x\" will be emitted\ninto the code the shell interprets.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: unshar config,  Next: unshar exit status,  Prev: unshar debug,  Up: unshar Invocation": {
            "content": "",
            "subsections": []
        },
        "File: sharutils.info,  Node: unshar exit status,  Next: unshar Authors,  Prev: unshar config,  Up: unshar Invocation": {
            "content": "One of the following exit values will be returned:\n`0 (EXITSUCCESS)'\nSuccessful program execution.\n\n`1 (EXITFAILURE)'\nThere was an error in command usage.\n\n`2 (EXITPOPENPROBLEM)'\ncannot spawn or write to a shell process\n\n`3 (EXITCANNOTCREATE)'\ncannot create output file\n\n`4 (EXITBADDIRECTORY)'\nthe working directory structure is invalid\n\n`5 (EXITNOMEM)'\nmemory allocation failure\n\n`6 (EXITINVALID)'\ninvalid input, does not contain a shar file\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: unshar Authors,  Next: unshar Bugs,  Prev: unshar exit status,  Up: unshar 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: unshar Bugs,  Next: unshar See Also,  Prev: unshar Authors,  Up: unshar 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: unshar See Also,  Prev: unshar Bugs,  Up: unshar Invocation": {
            "content": "shar(1)\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: uuencode Invocation,  Next: uudecode Invocation,  Prev: unshar Invocation,  Up: Basic": {
            "content": "",
            "subsections": [
                {
                    "name": "2.3 Invoking uuencode",
                    "content": "`uuencode' is used to create an ASCII representation of a file that can\nbe sent over channels that may otherwise corrupt the data."
                }
            ]
        },
        "Specifically, email cannot handle binary data and will often even": {
            "content": "insert a character when the six character sequence \"\\nFrom \" is seen.\n\n`uuencode' will read `in-file' if provided and otherwise read data\nfrom standard in and write the encoded form to standard out.  The\noutput will begin with a header line for use by `uudecode' giving it\nthe resulting suggested file `output-name' and access mode.  If the\n`output-name' is specifically `/dev/stdout', then `uudecode' will emit\nthe decoded file to standard out.\n\n*Note*: `uuencode' uses buffered input and assumes that it is not\nhand typed from a tty.  The consequence is that at a tty, you may need\nto hit Ctl-D several times to terminate input.\n\nThis section was generated by *AutoGen*, using the `agtexi-cmd'\ntemplate and the option descriptions for the `uuencode' program.  This\nsoftware is released under the GNU General Public License, version 3 or\nlater.\n\n* Menu:\n\n* uuencode usage::                  uuencode help/usage (`--help')\n* uuencode base64::                 base64 option (-m)\n* uuencode encode-file-name::       encode-file-name option (-e)\n* uuencode config::                 presetting/configuring uuencode\n* uuencode exit status::            exit status\n* uuencode Bugs::                   Bugs\n* uuencode Standards::              Standards\n* uuencode History::                History\n* uuencode See Also::               See Also\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: uuencode usage,  Next: uuencode base64,  Up: uuencode Invocation": {
            "content": "This is the automatically generated usage text for uuencode.\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\nuuencode (GNU sharutils) - encode a file into email friendly text\nUsage:  uuencode [ -<flag> | --<name> ]... [<in-file>] <output-name>\n\n-m, --base64               convert using base64\n-e, --encode-file-name     encode the output file name\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": []
        },
        "File: sharutils.info,  Node: uuencode base64,  Next: uuencode encode-file-name,  Prev: uuencode usage,  Up: uuencode Invocation": {
            "content": "This is the \"convert using base64\" option.  By default, `uuencode' will\nencode using the traditional conversion.  It is slower and less compact\nthan base64.  The encoded form of the file is expanded by 37% for UU\nencoding and by 35% for base64 encoding (3 bytes become 4 plus control\ninformation).\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: uuencode encode-file-name,  Next: uuencode config,  Prev: uuencode base64,  Up: uuencode Invocation": {
            "content": "This is the \"encode the output file name\" option.  Since output file\nnames may contain characters that are not handled well by various\ntransmission modes, you may specify that the `output-name' be base64\nencoded as well.  (Traditional uuencoding of the file name is not\nsupported.)\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: uuencode config,  Next: uuencode exit status,  Prev: uuencode encode-file-name,  Up: uuencode Invocation": {
            "content": "",
            "subsections": []
        },
        "File: sharutils.info,  Node: uuencode exit status,  Next: uuencode Bugs,  Prev: uuencode config,  Up: uuencode Invocation": {
            "content": "One of the following exit values will be returned:\n`0 (EXITSUCCESS)'\nSuccessful program execution.\n\n`1 (EXITFAILURE)'\nThe operation failed or the command syntax was not valid.\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: uuencode Bugs,  Next: uuencode Standards,  Prev: uuencode exit status,  Up: uuencode 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: uuencode Standards,  Next: uuencode History,  Prev: uuencode Bugs,  Up: uuencode Invocation": {
            "content": "This implementation is compliant with P1003.2b/D11.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: uuencode History,  Next: uuencode See Also,  Prev: uuencode Standards,  Up: uuencode Invocation": {
            "content": "The `uuencode' command first appeared in BSD 4.0.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: uuencode See Also,  Prev: uuencode History,  Up: uuencode Invocation": {
            "content": "uudecode(1), uuencode(5)\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: uudecode Invocation,  Prev: uuencode Invocation,  Up: Basic": {
            "content": "",
            "subsections": [
                {
                    "name": "2.4 Invoking uudecode",
                    "content": "If no `file'(s) are provided, then standard input is decoded.\n`uudecode' transforms uuencoded files into their original form.\n\nThe encoded file(s) may be specified on the command line, or one may\nbe read from standard input.  The output file name is specified in the\nencoded file, but may be overridden with the `-o' option.  It will have\nthe mode of the original file, except that setuid and execute bits are\nnot retained.  If the output file is specified to be `/dev/stdout' or\n`-', the result will be written to standard output. If there are\nmultiple input files and the second or subsquent file specifies\nstandard output, the decoded data will be written to the same file as\nthe previous output.  Don't do that.\n\n`uudecode' ignores any leading and trailing lines.  It looks for a\nline that starts with \"`begin'\" and proceeds until the end-of-encoding\nmarker is found.  The program determines from the header line of the\nencoded file which of the two supported encoding schemes was used and\nwhether or not the output file name has been encoded with base64\nencoding.  See `uuencode(5)'.\n\nThis section was generated by *AutoGen*, using the `agtexi-cmd'\ntemplate and the option descriptions for the `uudecode' program.  This\nsoftware is released under the GNU General Public License, version 3 or\nlater.\n\n* Menu:\n\n* uudecode usage::                  uudecode help/usage (`--help')\n* uudecode output-file::            output-file option (-o)\n* uudecode ignore-chmod::           ignore-chmod option (-c)\n* uudecode config::                 presetting/configuring uudecode\n* uudecode exit status::            exit status\n* uudecode Bugs::                   Bugs\n* uudecode Standards::              Standards\n* uudecode See Also::               See Also\n"
                }
            ]
        },
        "File: sharutils.info,  Node: uudecode usage,  Next: uudecode output-file,  Up: uudecode Invocation": {
            "content": "This is the automatically generated usage text for uudecode.\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\nuudecode (GNU sharutils) - decode an encoded file\nUsage:  uudecode [ -<flag> [<val>] | --<name>[{=| }<val>] ]... [<file>...]\n\n-o, --output-file=str      direct output to file\n-c, --ignore-chmod         ignore fchmod(3P) errors\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": []
        },
        "The encoded file(s) may be specified on the command line, or one may be": {
            "content": "read from standard input.  The output file name is specified in the encoded\nfile, but may be overridden with the '-o' option.  It will have the mode of\nthe original file, except that setuid and execute bits are not retained.  If\nthe output file is specified to be '/dev/stdout' or '-', the result will be\nwritten to standard output.  If there are multiple input files and the\nsecond or subsquent file specifies standard output, the decoded data will\nbe written to the same file as the previous output.  Don't do that.\n\n'uudecode' ignores any leading and trailing lines.  It looks for a line\nthat starts with \"'begin'\" and proceeds until the end-of-encoding marker is\nfound.  The program determines from the header line of the encoded file\nwhich of the two supported encoding schemes was used and whether or not the\noutput file name has been encoded with base64 encoding.  See 'uuencode(5)'.\n\nPlease send bug reports to:  <bug-gnu-utils@gnu.org>\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: uudecode output-file,  Next: uudecode ignore-chmod,  Prev: uudecode usage,  Up: uudecode Invocation": {
            "content": "This is the \"direct output to `file'\" option.  This option takes a\nstring argument `file'.  If specified, decoded data are written to this\nfile.  When multiple inputs are specified on the command line, this\noption cannot be specified.  All decoded data must be written to the\nfile name encoded in the data.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: uudecode ignore-chmod,  Next: uudecode config,  Prev: uudecode output-file,  Up: uudecode Invocation": {
            "content": "This is the \"ignore `fchmod(3p)' errors\" option.  By default, if the\noutput file permissions cannot be changed to the permissions specified\nin the encoded data, the file will not be written out and execution\nstops.  This option will cause that error to be ignored.  The resulting\nfile will have all the data, but the incorrect mode settings.\n\n`fchmod()' errors are also ignored if `POSIXLYCORRECT' is set in\nthe environment.  RE: <http://austingroupbugs.net/view.php?id=635>\n\nA warning is always emitted when `fchmod()' fails.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: uudecode config,  Next: uudecode exit status,  Prev: uudecode ignore-chmod,  Up: uudecode Invocation": {
            "content": "",
            "subsections": []
        },
        "File: sharutils.info,  Node: uudecode exit status,  Next: uudecode Bugs,  Prev: uudecode config,  Up: uudecode 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 (EXITINVALID)'\n(warning) One or more input files contained no valid data\n\n`4 (EXITNOINPUT)'\n(warning) The specified input file was not found\n\n`8 (EXITNOOUTPUT)'\nThe specified output file could not be created (error); or else\none of the output files could not be written or its access mode\ncould not be changed (warnings).  The accompanying message(s) will\ndistinguish.\n\n`9 (EXITNOMEM)'\nNo process memory available\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: uudecode Bugs,  Next: uudecode Standards,  Prev: uudecode exit status,  Up: uudecode Invocation": {
            "content": "Please put `sharutils' in the subject line for emailed bug reports.  It\nhelps to spot the message.\n\nIf more than one `name' in the encoded files are the same, or if the\nsecond or following input files specifies standard output for the\noutput file, then the result is probably not what is expected.",
            "subsections": []
        },
        "Specifically, standard output will be appended to and named output": {
            "content": "files will be replaced.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: uudecode Standards,  Next: uudecode See Also,  Prev: uudecode Bugs,  Up: uudecode Invocation": {
            "content": "This implementation is compliant with P1003.2b/D11.\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: uudecode See Also,  Prev: uudecode Standards,  Up: uudecode Invocation": {
            "content": "uuencode(1), uuencode(5)\n",
            "subsections": []
        },
        "File: sharutils.info,  Node: GNU Free Documentation License,  Prev: Basic,  Up: Top": {
            "content": "",
            "subsections": []
        },
        "Appendix A GNU Free Documentation License": {
            "content": "Version 1.3, 3 November 2008\n\nCopyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.\n`http://fsf.org/'\n\nEveryone is permitted to copy and distribute verbatim copies\nof this license document, but changing it is not allowed.\n\n0. PREAMBLE\n\nThe purpose of this License is to make a manual, textbook, or other\nfunctional and useful document \"free\" in the sense of freedom: to\nassure everyone the effective freedom to copy and redistribute it,\nwith or without modifying it, either commercially or\nnoncommercially.  Secondarily, this License preserves for the\nauthor and publisher a way to get credit for their work, while not\nbeing considered responsible for modifications made by others.\n\nThis License is a kind of \"copyleft\", which means that derivative\nworks of the document must themselves be free in the same sense.\nIt complements the GNU General Public License, which is a copyleft\nlicense designed for free software.\n\nWe have designed this License in order to use it for manuals for\nfree software, because free software needs free documentation: a\nfree program should come with manuals providing the same freedoms\nthat the software does.  But this License is not limited to\nsoftware manuals; it can be used for any textual work, regardless\nof subject matter or whether it is published as a printed book.\nWe recommend this License principally for works whose purpose is\ninstruction or reference.\n\n1. APPLICABILITY AND DEFINITIONS\n\nThis License applies to any manual or other work, in any medium,\nthat contains a notice placed by the copyright holder saying it\ncan be distributed under the terms of this License.  Such a notice\ngrants a world-wide, royalty-free license, unlimited in duration,\nto use that work under the conditions stated herein.  The\n\"Document\", below, refers to any such manual or work.  Any member\nof the public is a licensee, and is addressed as \"you\".  You\naccept the license if you copy, modify or distribute the work in a\nway requiring permission under copyright law.\n\nA \"Modified Version\" of the Document means any work containing the\nDocument or a portion of it, either copied verbatim, or with\nmodifications and/or translated into another language.\n\nA \"Secondary Section\" is a named appendix or a front-matter section\nof the Document that deals exclusively with the relationship of the\npublishers or authors of the Document to the Document's overall\nsubject (or to related matters) and contains nothing that could\nfall directly within that overall subject.  (Thus, if the Document\nis in part a textbook of mathematics, a Secondary Section may not\nexplain any mathematics.)  The relationship could be a matter of\nhistorical connection with the subject or with related matters, or\nof legal, commercial, philosophical, ethical or political position\nregarding them.\n\nThe \"Invariant Sections\" are certain Secondary Sections whose\ntitles are designated, as being those of Invariant Sections, in\nthe notice that says that the Document is released under this\nLicense.  If a section does not fit the above definition of\nSecondary then it is not allowed to be designated as Invariant.\nThe Document may contain zero Invariant Sections.  If the Document\ndoes not identify any Invariant Sections then there are none.\n\nThe \"Cover Texts\" are certain short passages of text that are\nlisted, as Front-Cover Texts or Back-Cover Texts, in the notice\nthat says that the Document is released under this License.  A\nFront-Cover Text may be at most 5 words, and a Back-Cover Text may\nbe at most 25 words.\n\nA \"Transparent\" copy of the Document means a machine-readable copy,\nrepresented in a format whose specification is available to the\ngeneral public, that is suitable for revising the document\nstraightforwardly with generic text editors or (for images\ncomposed of pixels) generic paint programs or (for drawings) some\nwidely available drawing editor, and that is suitable for input to\ntext formatters or for automatic translation to a variety of\nformats suitable for input to text formatters.  A copy made in an\notherwise Transparent file format whose markup, or absence of\nmarkup, has been arranged to thwart or discourage subsequent\nmodification by readers is not Transparent.  An image format is\nnot Transparent if used for any substantial amount of text.  A\ncopy that is not \"Transparent\" is called \"Opaque\".\n\nExamples of suitable formats for Transparent copies include plain\nASCII without markup, Texinfo input format, LaTeX input format,\nSGML or XML using a publicly available DTD, and\nstandard-conforming simple HTML, PostScript or PDF designed for\nhuman modification.  Examples of transparent image formats include\nPNG, XCF and JPG.  Opaque formats include proprietary formats that\ncan be read and edited only by proprietary word processors, SGML or\nXML for which the DTD and/or processing tools are not generally\navailable, and the machine-generated HTML, PostScript or PDF\nproduced by some word processors for output purposes only.\n\nThe \"Title Page\" means, for a printed book, the title page itself,\nplus such following pages as are needed to hold, legibly, the\nmaterial this License requires to appear in the title page.  For\nworks in formats which do not have any title page as such, \"Title\nPage\" means the text near the most prominent appearance of the\nwork's title, preceding the beginning of the body of the text.\n\nThe \"publisher\" means any person or entity that distributes copies\nof the Document to the public.\n\nA section \"Entitled XYZ\" means a named subunit of the Document\nwhose title either is precisely XYZ or contains XYZ in parentheses\nfollowing text that translates XYZ in another language.  (Here XYZ\nstands for a specific section name mentioned below, such as\n\"Acknowledgements\", \"Dedications\", \"Endorsements\", or \"History\".)\nTo \"Preserve the Title\" of such a section when you modify the\nDocument means that it remains a section \"Entitled XYZ\" according\nto this definition.\n\nThe Document may include Warranty Disclaimers next to the notice\nwhich states that this License applies to the Document.  These\nWarranty Disclaimers are considered to be included by reference in\nthis License, but only as regards disclaiming warranties: any other\nimplication that these Warranty Disclaimers may have is void and\nhas no effect on the meaning of this License.\n\n2. VERBATIM COPYING\n\nYou may copy and distribute the Document in any medium, either\ncommercially or noncommercially, provided that this License, the\ncopyright notices, and the license notice saying this License\napplies to the Document are reproduced in all copies, and that you\nadd no other conditions whatsoever to those of this License.  You\nmay not use technical measures to obstruct or control the reading\nor further copying of the copies you make or distribute.  However,\nyou may accept compensation in exchange for copies.  If you\ndistribute a large enough number of copies you must also follow\nthe conditions in section 3.\n\nYou may also lend copies, under the same conditions stated above,\nand you may publicly display copies.\n\n3. COPYING IN QUANTITY\n\nIf you publish printed copies (or copies in media that commonly\nhave printed covers) of the Document, numbering more than 100, and\nthe Document's license notice requires Cover Texts, you must\nenclose the copies in covers that carry, clearly and legibly, all\nthese Cover Texts: Front-Cover Texts on the front cover, and\nBack-Cover Texts on the back cover.  Both covers must also clearly\nand legibly identify you as the publisher of these copies.  The\nfront cover must present the full title with all words of the\ntitle equally prominent and visible.  You may add other material\non the covers in addition.  Copying with changes limited to the\ncovers, as long as they preserve the title of the Document and\nsatisfy these conditions, can be treated as verbatim copying in\nother respects.\n\nIf the required texts for either cover are too voluminous to fit\nlegibly, you should put the first ones listed (as many as fit\nreasonably) on the actual cover, and continue the rest onto\nadjacent pages.\n\nIf you publish or distribute Opaque copies of the Document\nnumbering more than 100, you must either include a\nmachine-readable Transparent copy along with each Opaque copy, or\nstate in or with each Opaque copy a computer-network location from\nwhich the general network-using public has access to download\nusing public-standard network protocols a complete Transparent\ncopy of the Document, free of added material.  If you use the\nlatter option, you must take reasonably prudent steps, when you\nbegin distribution of Opaque copies in quantity, to ensure that\nthis Transparent copy will remain thus accessible at the stated\nlocation until at least one year after the last time you\ndistribute an Opaque copy (directly or through your agents or\nretailers) of that edition to the public.\n\nIt is requested, but not required, that you contact the authors of\nthe Document well before redistributing any large number of\ncopies, to give them a chance to provide you with an updated\nversion of the Document.\n\n4. MODIFICATIONS\n\nYou may copy and distribute a Modified Version of the Document\nunder the conditions of sections 2 and 3 above, provided that you\nrelease the Modified Version under precisely this License, with\nthe Modified Version filling the role of the Document, thus\nlicensing distribution and modification of the Modified Version to\nwhoever possesses a copy of it.  In addition, you must do these\nthings in the Modified Version:\n\nA. Use in the Title Page (and on the covers, if any) a title\ndistinct from that of the Document, and from those of\nprevious versions (which should, if there were any, be listed\nin the History section of the Document).  You may use the\nsame title as a previous version if the original publisher of\nthat version gives permission.\n\nB. List on the Title Page, as authors, one or more persons or\nentities responsible for authorship of the modifications in\nthe Modified Version, together with at least five of the\nprincipal authors of the Document (all of its principal\nauthors, if it has fewer than five), unless they release you\nfrom this requirement.\n\nC. State on the Title page the name of the publisher of the\nModified Version, as the publisher.\n\nD. Preserve all the copyright notices of the Document.\n\nE. Add an appropriate copyright notice for your modifications\nadjacent to the other copyright notices.\n\nF. Include, immediately after the copyright notices, a license\nnotice giving the public permission to use the Modified\nVersion under the terms of this License, in the form shown in\nthe Addendum below.\n\nG. Preserve in that license notice the full lists of Invariant\nSections and required Cover Texts given in the Document's\nlicense notice.\n\nH. Include an unaltered copy of this License.\n\nI. Preserve the section Entitled \"History\", Preserve its Title,\nand add to it an item stating at least the title, year, new\nauthors, and publisher of the Modified Version as given on\nthe Title Page.  If there is no section Entitled \"History\" in\nthe Document, create one stating the title, year, authors,\nand publisher of the Document as given on its Title Page,\nthen add an item describing the Modified Version as stated in\nthe previous sentence.\n\nJ. Preserve the network location, if any, given in the Document\nfor public access to a Transparent copy of the Document, and\nlikewise the network locations given in the Document for\nprevious versions it was based on.  These may be placed in\nthe \"History\" section.  You may omit a network location for a\nwork that was published at least four years before the\nDocument itself, or if the original publisher of the version\nit refers to gives permission.\n\nK. For any section Entitled \"Acknowledgements\" or \"Dedications\",\nPreserve the Title of the section, and preserve in the\nsection all the substance and tone of each of the contributor\nacknowledgements and/or dedications given therein.\n\nL. Preserve all the Invariant Sections of the Document,\nunaltered in their text and in their titles.  Section numbers\nor the equivalent are not considered part of the section\ntitles.\n\nM. Delete any section Entitled \"Endorsements\".  Such a section\nmay not be included in the Modified Version.\n\nN. Do not retitle any existing section to be Entitled\n\"Endorsements\" or to conflict in title with any Invariant\nSection.\n\nO. Preserve any Warranty Disclaimers.\n\nIf the Modified Version includes new front-matter sections or\nappendices that qualify as Secondary Sections and contain no\nmaterial copied from the Document, you may at your option\ndesignate some or all of these sections as invariant.  To do this,\nadd their titles to the list of Invariant Sections in the Modified\nVersion's license notice.  These titles must be distinct from any\nother section titles.\n\nYou may add a section Entitled \"Endorsements\", provided it contains\nnothing but endorsements of your Modified Version by various\nparties--for example, statements of peer review or that the text\nhas been approved by an organization as the authoritative\ndefinition of a standard.\n\nYou may add a passage of up to five words as a Front-Cover Text,\nand a passage of up to 25 words as a Back-Cover Text, to the end\nof the list of Cover Texts in the Modified Version.  Only one\npassage of Front-Cover Text and one of Back-Cover Text may be\nadded by (or through arrangements made by) any one entity.  If the\nDocument already includes a cover text for the same cover,\npreviously added by you or by arrangement made by the same entity\nyou are acting on behalf of, you may not add another; but you may\nreplace the old one, on explicit permission from the previous\npublisher that added the old one.\n\nThe author(s) and publisher(s) of the Document do not by this\nLicense give permission to use their names for publicity for or to\nassert or imply endorsement of any Modified Version.\n\n5. COMBINING DOCUMENTS\n\nYou may combine the Document with other documents released under\nthis License, under the terms defined in section 4 above for\nmodified versions, provided that you include in the combination\nall of the Invariant Sections of all of the original documents,\nunmodified, and list them all as Invariant Sections of your\ncombined work in its license notice, and that you preserve all\ntheir Warranty Disclaimers.\n\nThe combined work need only contain one copy of this License, and\nmultiple identical Invariant Sections may be replaced with a single\ncopy.  If there are multiple Invariant Sections with the same name\nbut different contents, make the title of each such section unique\nby adding at the end of it, in parentheses, the name of the\noriginal author or publisher of that section if known, or else a\nunique number.  Make the same adjustment to the section titles in\nthe list of Invariant Sections in the license notice of the\ncombined work.\n\nIn the combination, you must combine any sections Entitled\n\"History\" in the various original documents, forming one section\nEntitled \"History\"; likewise combine any sections Entitled\n\"Acknowledgements\", and any sections Entitled \"Dedications\".  You\nmust delete all sections Entitled \"Endorsements.\"\n\n6. COLLECTIONS OF DOCUMENTS\n\nYou may make a collection consisting of the Document and other\ndocuments released under this License, and replace the individual\ncopies of this License in the various documents with a single copy\nthat is included in the collection, provided that you follow the\nrules of this License for verbatim copying of each of the\ndocuments in all other respects.\n\nYou may extract a single document from such a collection, and\ndistribute it individually under this License, provided you insert\na copy of this License into the extracted document, and follow\nthis License in all other respects regarding verbatim copying of\nthat document.\n\n7. AGGREGATION WITH INDEPENDENT WORKS\n\nA compilation of the Document or its derivatives with other\nseparate and independent documents or works, in or on a volume of\na storage or distribution medium, is called an \"aggregate\" if the\ncopyright resulting from the compilation is not used to limit the\nlegal rights of the compilation's users beyond what the individual\nworks permit.  When the Document is included in an aggregate, this\nLicense does not apply to the other works in the aggregate which\nare not themselves derivative works of the Document.\n\nIf the Cover Text requirement of section 3 is applicable to these\ncopies of the Document, then if the Document is less than one half\nof the entire aggregate, the Document's Cover Texts may be placed\non covers that bracket the Document within the aggregate, or the\nelectronic equivalent of covers if the Document is in electronic\nform.  Otherwise they must appear on printed covers that bracket\nthe whole aggregate.\n\n8. TRANSLATION\n\nTranslation is considered a kind of modification, so you may\ndistribute translations of the Document under the terms of section\n4.  Replacing Invariant Sections with translations requires special\npermission from their copyright holders, but you may include\ntranslations of some or all Invariant Sections in addition to the\noriginal versions of these Invariant Sections.  You may include a\ntranslation of this License, and all the license notices in the\nDocument, and any Warranty Disclaimers, provided that you also\ninclude the original English version of this License and the\noriginal versions of those notices and disclaimers.  In case of a\ndisagreement between the translation and the original version of\nthis License or a notice or disclaimer, the original version will\nprevail.\n\nIf a section in the Document is Entitled \"Acknowledgements\",\n\"Dedications\", or \"History\", the requirement (section 4) to\nPreserve its Title (section 1) will typically require changing the\nactual title.\n\n9. TERMINATION\n\nYou may not copy, modify, sublicense, or distribute the Document\nexcept as expressly provided under this License.  Any attempt\notherwise to copy, modify, sublicense, or distribute it is void,\nand will automatically terminate your rights under this License.\n\nHowever, if you cease all violation of this License, then your\nlicense from a particular copyright holder is reinstated (a)\nprovisionally, unless and until the copyright holder explicitly\nand finally terminates your license, and (b) permanently, if the\ncopyright holder fails to notify you of the violation by some\nreasonable means prior to 60 days after the cessation.\n\nMoreover, your license from a particular copyright holder is\nreinstated permanently if the copyright holder notifies you of the\nviolation by some reasonable means, this is the first time you have\nreceived notice of violation of this License (for any work) from\nthat copyright holder, and you cure the violation prior to 30 days\nafter your receipt of the notice.\n\nTermination of your rights under this section does not terminate\nthe licenses of parties who have received copies or rights from\nyou under this License.  If your rights have been terminated and\nnot permanently reinstated, receipt of a copy of some or all of\nthe same material does not give you any rights to use it.\n\n10. FUTURE REVISIONS OF THIS LICENSE\n\nThe Free Software Foundation may publish new, revised versions of\nthe GNU Free Documentation License from time to time.  Such new\nversions will be similar in spirit to the present version, but may\ndiffer in detail to address new problems or concerns.  See\n`http://www.gnu.org/copyleft/'.\n\nEach version of the License is given a distinguishing version\nnumber.  If the Document specifies that a particular numbered\nversion of this License \"or any later version\" applies to it, you\nhave the option of following the terms and conditions either of\nthat specified version or of any later version that has been\npublished (not as a draft) by the Free Software Foundation.  If\nthe Document does not specify a version number of this License,\nyou may choose any version ever published (not as a draft) by the\nFree Software Foundation.  If the Document specifies that a proxy\ncan decide which future versions of this License can be used, that\nproxy's public statement of acceptance of a version permanently\nauthorizes you to choose that version for the Document.\n\n11. RELICENSING\n\n\"Massive Multiauthor Collaboration Site\" (or \"MMC Site\") means any\nWorld Wide Web server that publishes copyrightable works and also\nprovides prominent facilities for anybody to edit those works.  A\npublic wiki that anybody can edit is an example of such a server.\nA \"Massive Multiauthor Collaboration\" (or \"MMC\") contained in the\nsite means any set of copyrightable works thus published on the MMC\nsite.\n\n\"CC-BY-SA\" means the Creative Commons Attribution-Share Alike 3.0\nlicense published by Creative Commons Corporation, a not-for-profit\ncorporation with a principal place of business in San Francisco,\nCalifornia, as well as future copyleft versions of that license\npublished by that same organization.\n\n\"Incorporate\" means to publish or republish a Document, in whole or\nin part, as part of another Document.\n\nAn MMC is \"eligible for relicensing\" if it is licensed under this\nLicense, and if all works that were first published under this\nLicense somewhere other than this MMC, and subsequently\nincorporated in whole or in part into the MMC, (1) had no cover\ntexts or invariant sections, and (2) were thus incorporated prior\nto November 1, 2008.\n\nThe operator of an MMC Site may republish an MMC contained in the\nsite under CC-BY-SA on the same site at any time before August 1,\n2009, provided the MMC is eligible for relicensing.\n\n",
            "subsections": [
                {
                    "name": "ADDENDUM: How to use this License for your documents",
                    "content": ""
                }
            ]
        },
        "To use this License in a document you have written, include a copy of": {
            "content": "the License in the document and put the following copyright and license\nnotices just after the title page:\n\nCopyright (C)  YEAR  YOUR NAME.\nPermission is granted to copy, distribute and/or modify this document\nunder the terms of the GNU Free Documentation License, Version 1.3\nor any later version published by the Free Software Foundation;\nwith no Invariant Sections, no Front-Cover Texts, and no Back-Cover\nTexts.  A copy of the license is included in the section entitled ``GNU\nFree Documentation License''.\n\nIf you have Invariant Sections, Front-Cover Texts and Back-Cover\nTexts, replace the \"with...Texts.\" line with this:\n\nwith the Invariant Sections being LIST THEIR TITLES, with\nthe Front-Cover Texts being LIST, and with the Back-Cover Texts\nbeing LIST.\n\nIf you have Invariant Sections without Cover Texts, or some other\ncombination of the three, merge those two alternatives to suit the\nsituation.\n\nIf your document contains nontrivial examples of program code, we\nrecommend releasing these examples in parallel under your choice of\nfree software license, such as the GNU General Public License, to\npermit their use in free software.\n\n",
            "subsections": []
        }
    },
    "flags": [],
    "examples": [],
    "see_also": []
}