{
    "content": [
        {
            "type": "text",
            "text": "# unshar (man)\n\n## NAME\n\nunshar - unpack a shar archive\n\n## SYNOPSIS\n\nunshar [-flags] [-flag [value]] [--option-name[[=| ]value]] [<file>...]\nThe  operands  that  this  program operates on may be specified either on the command line or\nread from standard input, one per line.  In that input, leading and trailing white  space  is\nstripped, blank lines are ignored.  Standard input may not be a terminal.\n\n## DESCRIPTION\n\nUnshar  scans  the  input  files  (typically email messages) looking for the start of a shell\narchive.  If no files are given, then standard input is processed instead.   It  then  passes\neach archive discovered through an invocation of the shell program to unpack it.\n\n## Sections\n\n- **NAME**\n- **SYNOPSIS**\n- **DESCRIPTION**\n- **OPTIONS** (10 subsections)\n- **FILES**\n- **EXIT STATUS**\n- **AUTHORS**\n- **COPYRIGHT**\n- **BUGS**\n- **NOTES**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "unshar",
        "section": "",
        "mode": "man",
        "summary": "unshar - unpack a shar archive",
        "synopsis": "unshar [-flags] [-flag [value]] [--option-name[[=| ]value]] [<file>...]\nThe  operands  that  this  program operates on may be specified either on the command line or\nread from standard input, one per line.  In that input, leading and trailing white  space  is\nstripped, blank lines are ignored.  Standard input may not be a terminal.",
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [
            {
                "flag": "-d",
                "long": "--directory",
                "arg": null,
                "description": "The input file names are relative to the current directory when the program was started. This option tells unshar to insert a cd <dir> commad at the start of the shar text written to the shell."
            },
            {
                "flag": "-c",
                "long": "--overwrite",
                "arg": null,
                "description": "This option is passed through as an option to the shar file. Many shell archive scripts ac‐ cept a -c argument to indicate that existing files should be overwritten."
            },
            {
                "flag": "-f",
                "long": "--force",
                "arg": null,
                "description": ""
            },
            {
                "flag": "-E",
                "long": "--split-at",
                "arg": null,
                "description": "for this option is: exit 0 With this option, unshar isolates each different shell archive from the others which have been placed in the same file, unpacking each in turn, from the beginning of the file to the end. Its proper operation relies on the fact that many shar files are terminated by a read‐ ily identifiable string at the start of the last line. For example, noticing that most `.signatures' have a double hyphen (\"--\") on a line right be‐ fore them, one can then sometimes use --split-at=--. The signature will then be skipped, along with the headers of the following message."
            },
            {
                "flag": "-e",
                "long": "--exit-0",
                "arg": null,
                "description": "any of the following options: split-at. Most shell archives end with a line consisting of simply \"exit 0\". This option is equivalent to (and conflicts with) --split-at=\"exit 0\"."
            },
            {
                "flag": "-D",
                "long": "--debug",
                "arg": null,
                "description": "\"set -x\" will be emitted into the code the shell interprets."
            },
            {
                "flag": "-h",
                "long": "--help",
                "arg": null,
                "description": "-!, --more-help Pass the extended usage information through a pager."
            },
            {
                "flag": "-R",
                "long": "--save-opts",
                "arg": null,
                "description": "last configuration file listed in the OPTION PRESETS section, below. The command will exit after updating the config file."
            },
            {
                "flag": "-r",
                "long": "--no-load-opts",
                "arg": null,
                "description": "form will disable the loading of earlier config/rc/ini files. --no-load-opts is handled early, out of order."
            },
            {
                "flag": "-v",
                "long": "--version",
                "arg": null,
                "description": "`v', a simple version. The `c' mode will print copyright information and `n' will print the full copyright notice. OPTION PRESETS Any option that is not marked as not presettable may be preset by loading values from configuration (\"RC\" or \".INI\") file(s). The file \"$HOME/.sharrc\" will be used, if present."
            }
        ],
        "examples": [],
        "see_also": [],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 7,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 9,
                "subsections": []
            },
            {
                "name": "OPTIONS",
                "lines": 1,
                "subsections": [
                    {
                        "name": "-d _ --directory",
                        "lines": 4,
                        "flag": "-d",
                        "long": "--directory"
                    },
                    {
                        "name": "-c --overwrite",
                        "lines": 3,
                        "flag": "-c",
                        "long": "--overwrite"
                    },
                    {
                        "name": "-f --force",
                        "lines": 1,
                        "flag": "-f",
                        "long": "--force"
                    },
                    {
                        "name": "-E _ --split-at",
                        "lines": 12,
                        "flag": "-E",
                        "long": "--split-at"
                    },
                    {
                        "name": "-e --exit-0",
                        "lines": 5,
                        "flag": "-e",
                        "long": "--exit-0"
                    },
                    {
                        "name": "-D --debug",
                        "lines": 2,
                        "flag": "-D",
                        "long": "--debug"
                    },
                    {
                        "name": "-h --help",
                        "lines": 2,
                        "flag": "-h",
                        "long": "--help"
                    },
                    {
                        "name": "-R  --save-opts",
                        "lines": 3,
                        "flag": "-R",
                        "long": "--save-opts"
                    },
                    {
                        "name": "-r _ --load-opts --no-load-opts",
                        "lines": 3,
                        "flag": "-r",
                        "long": "--no-load-opts"
                    },
                    {
                        "name": "-v  --version",
                        "lines": 8,
                        "flag": "-v",
                        "long": "--version"
                    }
                ]
            },
            {
                "name": "FILES",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "EXIT STATUS",
                "lines": 24,
                "subsections": []
            },
            {
                "name": "AUTHORS",
                "lines": 4,
                "subsections": []
            },
            {
                "name": "COPYRIGHT",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "BUGS",
                "lines": 5,
                "subsections": []
            },
            {
                "name": "NOTES",
                "lines": 3,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "unshar - unpack a shar archive\n",
                "subsections": []
            },
            "SYNOPSIS": {
                "content": "unshar [-flags] [-flag [value]] [--option-name[[=| ]value]] [<file>...]\n\nThe  operands  that  this  program operates on may be specified either on the command line or\nread from standard input, one per line.  In that input, leading and trailing white  space  is\nstripped, blank lines are ignored.  Standard input may not be a terminal.\n\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "Unshar  scans  the  input  files  (typically email messages) looking for the start of a shell\narchive.  If no files are given, then standard input is processed instead.   It  then  passes\neach archive discovered through an invocation of the shell program to unpack it.\n\nThis program will perform its function for every file named on the command line or every file\nnamed  in  a  list read from stdin.  The arguments or input names must be pre-existing files.\nThe input list may contain comments, which are blank lines or  lines  beginning  with  a  '#'\ncharacter.\n",
                "subsections": []
            },
            "OPTIONS": {
                "content": "",
                "subsections": [
                    {
                        "name": "-d _ --directory",
                        "content": "The input file names are relative to the current directory when the program was started.\nThis option tells unshar to insert a cd <dir> commad at the start of the shar text written to\nthe shell.\n",
                        "flag": "-d",
                        "long": "--directory"
                    },
                    {
                        "name": "-c --overwrite",
                        "content": "This option is passed through as an option to the shar file.  Many shell archive scripts ac‐\ncept a -c argument to indicate that existing files should be overwritten.\n",
                        "flag": "-c",
                        "long": "--overwrite"
                    },
                    {
                        "name": "-f --force",
                        "content": "",
                        "flag": "-f",
                        "long": "--force"
                    },
                    {
                        "name": "-E _ --split-at",
                        "content": "for this option is:\nexit 0\n\nWith this option, unshar isolates each different shell archive from the others which have\nbeen placed in the same file, unpacking each in turn, from the beginning of the file to the\nend.  Its proper operation relies on the fact that many shar files are terminated by a read‐\nily identifiable string at the start of the last line.\n\nFor example, noticing that most `.signatures' have a double hyphen (\"--\") on a line right be‐\nfore them, one can then sometimes use --split-at=--.  The signature will then be skipped,\nalong with the headers of the following message.\n",
                        "flag": "-E",
                        "long": "--split-at"
                    },
                    {
                        "name": "-e --exit-0",
                        "content": "any of the following options: split-at.\n\nMost shell archives end with a line consisting of simply \"exit 0\".  This option is equivalent\nto (and conflicts with) --split-at=\"exit 0\".\n",
                        "flag": "-e",
                        "long": "--exit-0"
                    },
                    {
                        "name": "-D --debug",
                        "content": "\"set -x\" will be emitted into the code the shell interprets.\n",
                        "flag": "-D",
                        "long": "--debug"
                    },
                    {
                        "name": "-h --help",
                        "content": "-!, --more-help Pass the extended usage information through a pager.\n",
                        "flag": "-h",
                        "long": "--help"
                    },
                    {
                        "name": "-R  --save-opts",
                        "content": "last configuration file listed in the OPTION PRESETS section, below.  The command will exit\nafter updating the config file.\n",
                        "flag": "-R",
                        "long": "--save-opts"
                    },
                    {
                        "name": "-r _ --load-opts --no-load-opts",
                        "content": "form will disable the loading of earlier config/rc/ini files.  --no-load-opts is handled\nearly, out of order.\n",
                        "flag": "-r",
                        "long": "--no-load-opts"
                    },
                    {
                        "name": "-v  --version",
                        "content": "`v', a simple version.  The `c' mode will print copyright information and `n' will print the\nfull copyright notice.\n\nOPTION PRESETS\nAny  option that is not marked as not presettable may be preset by loading values from\nconfiguration (\"RC\" or \".INI\") file(s).  The file \"$HOME/.sharrc\"  will  be  used,  if\npresent.\n",
                        "flag": "-v",
                        "long": "--version"
                    }
                ]
            },
            "FILES": {
                "content": "See OPTION PRESETS for configuration files.\n",
                "subsections": []
            },
            "EXIT STATUS": {
                "content": "One of the following exit values will be returned:\n\n0  (EXITSUCCESS) Successful program execution.\n\n1  (EXITFAILURE) There was an error in command usage.\n\n2  (EXITPOPENPROBLEM) cannot spawn or write to a shell process\n\n3  (EXITCANNOTCREATE) cannot create output file\n\n4  (EXITBADDIRECTORY) the working directory structure is invalid\n\n5  (EXITNOMEM) memory allocation failure\n\n6  (EXITINVALID) invalid input, does not contain a shar file\n\n66  (EXNOINPUT) A specified configuration file could not be loaded.\n\n70  (EXSOFTWARE) libopts had an internal operational error.  Please report it to autogen-\nusers@lists.sourceforge.net.  Thank you.\n\nSEE ALSO\nshar(1)\n",
                "subsections": []
            },
            "AUTHORS": {
                "content": "The shar and unshar programs is the collective work of many authors.  Many people contributed\nby  reporting problems, suggesting various improvements or submitting actual code.  A list of\nthese people is in the THANKS file in the sharutils distribution.\n",
                "subsections": []
            },
            "COPYRIGHT": {
                "content": "Copyright (C) 1994-2015 Free Software Foundation, Inc. all rights reserved.  This program  is\nreleased under the terms of the GNU General Public License, version 3 or later.\n",
                "subsections": []
            },
            "BUGS": {
                "content": "Please  put sharutils in the subject line for emailed bug reports.  It helps to spot the mes‐\nsage.\n\nPlease send bug reports to: bug-gnu-utils@gnu.org\n",
                "subsections": []
            },
            "NOTES": {
                "content": "This manual page was AutoGen-erated from the unshar option definitions.\n\nGNU sharutils (4.15.2)                       30 May 2015                                   unshar(1)",
                "subsections": []
            }
        }
    }
}