{
    "content": [
        {
            "type": "text",
            "text": "# annotate-output (man)\n\n## NAME\n\nannotate-output - annotate program output with time and stream\n\n## SYNOPSIS\n\nannotate-output [options] program [args ...]\n\n## DESCRIPTION\n\nannotate-output will execute the specified program, while prepending every line with the cur‐\nrent time and O for stdout and E for stderr.\n\n## Sections\n\n- **NAME**\n- **SYNOPSIS**\n- **DESCRIPTION**\n- **OPTIONS** (2 subsections)\n- **EXAMPLE**\n- **BUGS**\n- **SEE ALSO**\n- **SUPPORT**\n- **AUTHOR**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "annotate-output",
        "section": "",
        "mode": "man",
        "summary": "annotate-output - annotate program output with time and stream",
        "synopsis": "annotate-output [options] program [args ...]",
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [
            {
                "flag": "-h",
                "long": "--help",
                "arg": null,
                "description": "Display a help message and exit successfully."
            }
        ],
        "examples": [
            "$ annotate-output make",
            "21:41:21 I: Started make",
            "21:41:21 O: gcc -Wall program.c",
            "21:43:18 E: program.c: Couldn't compile, and took me ages to find out",
            "21:43:19 E: collect2: ld returned 1 exit status",
            "21:43:19 E: make: * [all] Error 1",
            "21:43:19 I: Finished with exitcode 2"
        ],
        "see_also": [
            {
                "name": "date",
                "section": "1",
                "url": "https://www.chedong.com/phpMan.php/man/date/1/json"
            }
        ],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 4,
                "subsections": []
            },
            {
                "name": "OPTIONS",
                "lines": 1,
                "subsections": [
                    {
                        "name": "+FORMAT",
                        "lines": 2
                    },
                    {
                        "name": "-h --help",
                        "lines": 3,
                        "flag": "-h",
                        "long": "--help"
                    }
                ]
            },
            {
                "name": "EXAMPLE",
                "lines": 9,
                "subsections": []
            },
            {
                "name": "BUGS",
                "lines": 13,
                "subsections": []
            },
            {
                "name": "SEE ALSO",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "SUPPORT",
                "lines": 4,
                "subsections": []
            },
            {
                "name": "AUTHOR",
                "lines": 6,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "annotate-output - annotate program output with time and stream\n",
                "subsections": []
            },
            "SYNOPSIS": {
                "content": "annotate-output [options] program [args ...]\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "annotate-output will execute the specified program, while prepending every line with the cur‐\nrent time and O for stdout and E for stderr.\n\n",
                "subsections": []
            },
            "OPTIONS": {
                "content": "",
                "subsections": [
                    {
                        "name": "+FORMAT",
                        "content": "Controls the timestamp format, as per date(1).  Defaults to \"%H:%M:%S\".\n"
                    },
                    {
                        "name": "-h --help",
                        "content": "Display a help message and exit successfully.\n\n",
                        "flag": "-h",
                        "long": "--help"
                    }
                ]
            },
            "EXAMPLE": {
                "content": "$ annotate-output make\n21:41:21 I: Started make\n21:41:21 O: gcc -Wall program.c\n21:43:18 E: program.c: Couldn't compile, and took me ages to find out\n21:43:19 E: collect2: ld returned 1 exit status\n21:43:19 E: make: * [all] Error 1\n21:43:19 I: Finished with exitcode 2\n\n",
                "subsections": []
            },
            "BUGS": {
                "content": "Since  stdout and stderr are processed in parallel, it can happen that some lines received on\nstdout will show up before later-printed stderr lines (and vice-versa).\n\nThis is unfortunately very hard to fix with the current annotation strategy.  A fix would in‐\nvolve switching to PTRACE'ing the process.  Giving nice a (much) higher priority over the ex‐\necuted program could however cause this behaviour to show up less frequently.\n\nThe program does not work as well when the output is not linewise.  In  particular,  when  an\ninteractive  program asks for input, the question might not be shown until after you have an‐\nswered it.  This will give the impression that the annotated program has hung, while  it  has\nnot.\n\n",
                "subsections": []
            },
            "SEE ALSO": {
                "content": "date(1)\n\n",
                "subsections": []
            },
            "SUPPORT": {
                "content": "This  program  is community-supported (meaning: you'll need to fix it yourself).  Patches are\nhowever appreciated, as is any feedback (positive or negative).\n\n",
                "subsections": []
            },
            "AUTHOR": {
                "content": "This manual page was written by Jeroen van Wolffelaar <jeroen@wolffelaar.nl> and can  be  re‐\ndistributed  under the terms of the GPL version 2.  The annotate-output script itself was re-\nwritten by Johannes Schauer Marin Rodrigues <josch@debian.org> and can be redistributed under\nthe terms of the Expat license.\n\nDEBIAN                                    Debian Utilities                        ANNOTATE-OUTPUT(1)",
                "subsections": []
            }
        }
    }
}