{
    "content": [
        {
            "type": "text",
            "text": "# HTCACHECLEAN (man)\n\n## NAME\n\nhtcacheclean - Clean up the disk cache\n\n## SYNOPSIS\n\nhtcacheclean [ -D ] [ -v ] [ -t ] [ -r ] [ -n ] [ -Rround ] -ppath [ -llimit ] [ -Llimit ]\nhtcacheclean  [  -n ] [ -t ] [ -i ] [ -Ppidfile ] [ -Rround ] -dinterval -ppath [ -llimit ] [\n-Llimit ]\nhtcacheclean [ -v ] [ -Rround ] -ppath [ -a ] [ -A ]\nhtcacheclean [ -D ] [ -v ] [ -t ] [ -Rround ] -ppath url\n\n## Sections\n\n- **NAME**\n- **SYNOPSIS**\n- **SUMMARY**\n- **OPTIONS** (14 subsections)\n- **DELETING A SPECIFIC URL**\n- **LISTING URLS IN THE CACHE**\n- **EXIT STATUS**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "HTCACHECLEAN",
        "section": "",
        "mode": "man",
        "summary": "htcacheclean - Clean up the disk cache",
        "synopsis": "htcacheclean [ -D ] [ -v ] [ -t ] [ -r ] [ -n ] [ -Rround ] -ppath [ -llimit ] [ -Llimit ]\nhtcacheclean  [  -n ] [ -t ] [ -i ] [ -Ppidfile ] [ -Rround ] -dinterval -ppath [ -llimit ] [\n-Llimit ]\nhtcacheclean [ -v ] [ -Rround ] -ppath [ -a ] [ -A ]\nhtcacheclean [ -D ] [ -v ] [ -t ] [ -Rround ] -ppath url",
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [
            {
                "flag": "-d",
                "long": null,
                "arg": null,
                "description": "Daemonize and repeat cache cleaning every interval minutes. This option is mutually exclusive with the -D, -v and -r options. To shutdown the daemon cleanly, just send it a SIGTERM or SIGINT."
            },
            {
                "flag": "-d",
                "long": null,
                "arg": null,
                "description": "option. When doing a dry run and deleting directories with -t, the inodes reported deleted in the stats cannot take into account the directories deleted, and will be marked as an estimate."
            },
            {
                "flag": "-d",
                "long": null,
                "arg": null,
                "description": ""
            },
            {
                "flag": "-r",
                "long": null,
                "arg": null,
                "description": "you may get garbage in the cache). This option is mutually exclusive with the -d op‐ tion and implies the -t option."
            },
            {
                "flag": "-n",
                "long": null,
                "arg": null,
                "description": "sleep from time to time so that (a) the disk IO will be delayed and (b) the kernel can schedule other processes in the meantime."
            },
            {
                "flag": "-t",
                "long": null,
                "arg": null,
                "description": "some configurations the large number of directories created may require attention. If your configuration requires a very large number of directories, to the point that in‐ ode or file allocation table exhaustion may become an issue, use of this option is ad‐ vised."
            },
            {
                "flag": "-p",
                "long": null,
                "arg": null,
                "description": "specified with the CacheRoot directive."
            },
            {
                "flag": "-P",
                "long": null,
                "arg": null,
                "description": "Specify pidfile as the name of the file to write the process ID to when daemonized."
            },
            {
                "flag": "-R",
                "long": null,
                "arg": null,
                "description": "Specify round as the amount to round sizes up to, to compensate for disk block sizes. Set to the block size of the cache partition."
            },
            {
                "flag": "-l",
                "long": null,
                "arg": null,
                "description": "Specify limit as the total disk cache size limit. The value is expressed in bytes by default (or attaching B to the number). Attach K for Kbytes, M for MBytes or G for Gbytes."
            },
            {
                "flag": "-L",
                "long": null,
                "arg": null,
                "description": "Specify limit as the total disk cache inode limit. K, M or G suffix can also be used."
            },
            {
                "flag": "-i",
                "long": null,
                "arg": null,
                "description": "tion is only possible together with the -d option."
            },
            {
                "flag": "-a",
                "long": null,
                "arg": null,
                "description": "once for each variant."
            },
            {
                "flag": "-A",
                "long": null,
                "arg": null,
                "description": "lowing order: url, header size, body size, status, entity version, date, expiry, re‐ quest time, response time, body present, head request."
            }
        ],
        "examples": [],
        "see_also": [],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 14,
                "subsections": []
            },
            {
                "name": "SUMMARY",
                "lines": 10,
                "subsections": []
            },
            {
                "name": "OPTIONS",
                "lines": 1,
                "subsections": [
                    {
                        "name": "-d",
                        "lines": 4,
                        "flag": "-d"
                    },
                    {
                        "name": "-D -d",
                        "lines": 4,
                        "flag": "-d"
                    },
                    {
                        "name": "-v -d",
                        "lines": 1,
                        "flag": "-d"
                    },
                    {
                        "name": "-r",
                        "lines": 3,
                        "flag": "-r"
                    },
                    {
                        "name": "-n",
                        "lines": 3,
                        "flag": "-n"
                    },
                    {
                        "name": "-t",
                        "lines": 5,
                        "flag": "-t"
                    },
                    {
                        "name": "-p",
                        "lines": 2,
                        "flag": "-p"
                    },
                    {
                        "name": "-P",
                        "lines": 2,
                        "flag": "-P"
                    },
                    {
                        "name": "-R",
                        "lines": 3,
                        "flag": "-R"
                    },
                    {
                        "name": "-l",
                        "lines": 4,
                        "flag": "-l"
                    },
                    {
                        "name": "-L",
                        "lines": 2,
                        "flag": "-L"
                    },
                    {
                        "name": "-i",
                        "lines": 2,
                        "flag": "-i"
                    },
                    {
                        "name": "-a",
                        "lines": 2,
                        "flag": "-a"
                    },
                    {
                        "name": "-A",
                        "lines": 4,
                        "flag": "-A"
                    }
                ]
            },
            {
                "name": "DELETING A SPECIFIC URL",
                "lines": 10,
                "subsections": []
            },
            {
                "name": "LISTING URLS IN THE CACHE",
                "lines": 36,
                "subsections": []
            },
            {
                "name": "EXIT STATUS",
                "lines": 8,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "htcacheclean - Clean up the disk cache\n\n",
                "subsections": []
            },
            "SYNOPSIS": {
                "content": "htcacheclean [ -D ] [ -v ] [ -t ] [ -r ] [ -n ] [ -Rround ] -ppath [ -llimit ] [ -Llimit ]\n\n\nhtcacheclean  [  -n ] [ -t ] [ -i ] [ -Ppidfile ] [ -Rround ] -dinterval -ppath [ -llimit ] [\n-Llimit ]\n\n\nhtcacheclean [ -v ] [ -Rround ] -ppath [ -a ] [ -A ]\n\n\nhtcacheclean [ -D ] [ -v ] [ -t ] [ -Rround ] -ppath url\n\n\n",
                "subsections": []
            },
            "SUMMARY": {
                "content": "htcacheclean is used to keep the size of modcachedisk's storage within a given size  limit,\nor  limit on inodes in use. This tool can run either manually or in daemon mode. When running\nin daemon mode, it sleeps in the background and checks the cache directory at regular  inter‐\nvals  for  cached content to be removed. You can stop the daemon cleanly by sending it a TERM\nor INT signal. When run manually, a once off check of the cache directory is made for  cached\ncontent  to  be removed. If one or more URLs are specified, each URL will be deleted from the\ncache, if present.\n\n\n",
                "subsections": []
            },
            "OPTIONS": {
                "content": "",
                "subsections": [
                    {
                        "name": "-d",
                        "content": "Daemonize and repeat cache cleaning every interval minutes. This  option  is  mutually\nexclusive with the -D, -v and -r options. To shutdown the daemon cleanly, just send it\na SIGTERM or SIGINT.\n",
                        "flag": "-d"
                    },
                    {
                        "name": "-D -d",
                        "content": "option.  When  doing  a  dry run and deleting directories with -t, the inodes reported\ndeleted in the stats cannot take into account the directories  deleted,  and  will  be\nmarked as an estimate.\n",
                        "flag": "-d"
                    },
                    {
                        "name": "-v -d",
                        "content": "",
                        "flag": "-d"
                    },
                    {
                        "name": "-r",
                        "content": "you may get garbage in the cache). This option is mutually exclusive with the  -d  op‐\ntion and implies the -t option.\n",
                        "flag": "-r"
                    },
                    {
                        "name": "-n",
                        "content": "sleep from time to time so that (a) the disk IO will be delayed and (b) the kernel can\nschedule other processes in the meantime.\n",
                        "flag": "-n"
                    },
                    {
                        "name": "-t",
                        "content": "some configurations the large number of directories created may require attention.  If\nyour  configuration requires a very large number of directories, to the point that in‐\node or file allocation table exhaustion may become an issue, use of this option is ad‐\nvised.\n",
                        "flag": "-t"
                    },
                    {
                        "name": "-p",
                        "content": "specified with the CacheRoot directive.\n",
                        "flag": "-p"
                    },
                    {
                        "name": "-P",
                        "content": "Specify pidfile as the name of the file to write the process ID to when daemonized.\n",
                        "flag": "-P"
                    },
                    {
                        "name": "-R",
                        "content": "Specify round as the amount to round sizes up to, to compensate for disk block  sizes.\nSet to the block size of the cache partition.\n",
                        "flag": "-R"
                    },
                    {
                        "name": "-l",
                        "content": "Specify  limit  as the total disk cache size limit. The value is expressed in bytes by\ndefault (or attaching B to the number). Attach K for Kbytes, M for  MBytes  or  G  for\nGbytes.\n",
                        "flag": "-l"
                    },
                    {
                        "name": "-L",
                        "content": "Specify limit as the total disk cache inode limit. K, M or G suffix can also be used.\n",
                        "flag": "-L"
                    },
                    {
                        "name": "-i",
                        "content": "tion is only possible together with the -d option.\n",
                        "flag": "-i"
                    },
                    {
                        "name": "-a",
                        "content": "once for each variant.\n",
                        "flag": "-a"
                    },
                    {
                        "name": "-A",
                        "content": "lowing order: url, header size, body size, status, entity version, date,  expiry,  re‐\nquest time, response time, body present, head request.\n\n",
                        "flag": "-A"
                    }
                ]
            },
            "DELETING A SPECIFIC URL": {
                "content": "If  htcacheclean is passed one or more URLs, each URL will be deleted from the cache. If mul‐\ntiple variants of an URL exists, all variants would be deleted.\n\n\nWhen a reverse proxied URL is to be deleted, the effective URL is constructed from  the  Host\nheader,  the  port,  the path and the query. Note the '?' in the URL must always be specified\nexplicitly, whether a query string is present or not. For example, an attempt to  delete  the\npath / from the server localhost, the URL to delete would be http://localhost:80/?.\n\n",
                "subsections": []
            },
            "LISTING URLS IN THE CACHE": {
                "content": "By  passing the -a or -A options to htcacheclean, the URLs within the cache will be listed as\nthey are found, one URL per line. The -A option dumps the full cache  entry  after  the  URL,\nwith fields in the following order:\n\n\n\nurl    The URL of the entry.\n\nheader size\nThe size of the header in bytes.\n\nbody size\nThe size of the body in bytes.\n\nstatus Status of the cached response.\n\nentity version\nThe number of times this entry has been revalidated without being deleted.\n\ndate   Date of the response.\n\nexpiry Expiry date of the response.\n\nrequest time\nTime of the start of the request.\n\nresponse time\nTime of the end of the request.\n\nbody present\nIf 0, no body is stored with this request, 1 otherwise.\n\nhead request\nIf 1, the entry contains a cached HEAD request with no body, 0 otherwise.\n\n",
                "subsections": []
            },
            "EXIT STATUS": {
                "content": "htcacheclean  returns  a zero status (\"true\") if all operations were successful, 1 otherwise.\nIf an URL is specified, and the URL was cached and successfully removed,  0  is  returned,  2\notherwise. If an error occurred during URL removal, 1 is returned.\n\n\n\n\nApache HTTP Server                           2019-08-09                              HTCACHECLEAN(8)",
                "subsections": []
            }
        }
    }
}