{
    "content": [
        {
            "type": "text",
            "text": "# read (info)\n\n## Sections\n\n- **File: coreutils.info,  Node: readlink invocation,  Next: rmdir invocation,  Prev: mknod invocation,  Up: Special file types** (1 subsections)\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "read",
        "section": "",
        "mode": "info",
        "summary": null,
        "synopsis": null,
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [],
        "examples": [],
        "see_also": [],
        "section_outline": [
            {
                "name": "File: coreutils.info,  Node: readlink invocation,  Next: rmdir invocation,  Prev: mknod invocation,  Up: Special file types",
                "lines": 1,
                "subsections": [
                    {
                        "name": "12.6 'readlink': Print value of a symlink or canonical file name",
                        "lines": 71
                    }
                ]
            }
        ],
        "sections": {
            "File: coreutils.info,  Node: readlink invocation,  Next: rmdir invocation,  Prev: mknod invocation,  Up: Special file types": {
                "content": "",
                "subsections": [
                    {
                        "name": "12.6 'readlink': Print value of a symlink or canonical file name",
                        "content": "'readlink' may work in one of two supported modes:\n\n'Readlink mode'\n\n'readlink' outputs the value of the given symbolic links.  If\n'readlink' is invoked with an argument other than the name of a\nsymbolic link, it produces no output and exits with a nonzero exit\ncode.\n\n'Canonicalize mode'\n\n'readlink' outputs the absolute name of the given files which\ncontain no '.', '..' components nor any repeated separators ('/')\nor symbolic links.  Note the 'realpath' command is the preferred\ncommand to use for canonicalization.  *Note realpath invocation::.\n\nreadlink [OPTION]... FILE...\n\nBy default, 'readlink' operates in readlink mode.\n\nThe program accepts the following options.  Also see *note Common\noptions::.\n\n'-f'\n'--canonicalize'\nActivate canonicalize mode.  If any component of the file name\nexcept the last one is missing or unavailable, 'readlink' produces\nno output and exits with a nonzero exit code.  A trailing slash is\nignored.\n\n'-e'\n'--canonicalize-existing'\nActivate canonicalize mode.  If any component is missing or\nunavailable, 'readlink' produces no output and exits with a nonzero\nexit code.  A trailing slash requires that the name resolve to a\ndirectory.\n\n'-m'\n'--canonicalize-missing'\nActivate canonicalize mode.  If any component is missing or\nunavailable, 'readlink' treats it as a directory.\n\n'-n'\n'--no-newline'\nDo not print the output delimiter, when a single FILE is specified.\nPrint a warning if specified along with multiple FILEs.\n\n'-s'\n'-q'\n'--silent'\n'--quiet'\nSuppress most error messages.  On by default.\n\n'-v'\n'--verbose'\nReport error messages.\n\n'-z'\n'--zero'\nOutput a zero byte (ASCII NUL) at the end of each line, rather than\na newline.  This option enables other programs to parse the output\neven when that output would contain data with embedded newlines.\n\nThe 'readlink' utility first appeared in OpenBSD 2.1.\n\nThe 'realpath' command without options, operates like 'readlink' in\ncanonicalize mode.\n\nAn exit status of zero indicates success, and a nonzero value\nindicates failure.\n"
                    }
                ]
            }
        }
    }
}