{
    "mode": "man",
    "parameter": "config_data",
    "section": "1p",
    "url": "https://www.chedong.com/phpMan.php/man/config_data/1p/json",
    "generated": "2026-05-30T05:11:42Z",
    "synopsis": "# Get config/feature values\nconfigdata --module Foo::Bar --feature bazzable\nconfigdata --module Foo::Bar --config magicnumber\n# Set config/feature values\nconfigdata --module Foo::Bar --setfeature bazzable=1\nconfigdata --module Foo::Bar --setconfig magicnumber=42\n# Print a usage message\nconfigdata --help",
    "sections": {
        "NAME": {
            "content": "configdata - Query or change configuration of Perl modules\n",
            "subsections": []
        },
        "SYNOPSIS": {
            "content": "# Get config/feature values\nconfigdata --module Foo::Bar --feature bazzable\nconfigdata --module Foo::Bar --config magicnumber\n\n# Set config/feature values\nconfigdata --module Foo::Bar --setfeature bazzable=1\nconfigdata --module Foo::Bar --setconfig magicnumber=42\n\n# Print a usage message\nconfigdata --help\n",
            "subsections": []
        },
        "DESCRIPTION": {
            "content": "The \"configdata\" tool provides a command-line interface to the configuration of Perl\nmodules.  By \"configuration\", we mean something akin to \"user preferences\" or \"local\nsettings\".  This is a formalization and abstraction of the systems that people like Andreas\nKoenig (\"CPAN::Config\"), Jon Swartz (\"HTML::Mason::Config\"), Andy Wardley\n(\"Template::Config\"), and Larry Wall (perl's own Config.pm) have developed independently.\n\nThe configuration system employed here was developed in the context of \"Module::Build\".\nUnder this system, configuration information for a module \"Foo\", for example, is stored in a\nmodule called \"Foo::ConfigData\") (I would have called it \"Foo::Config\", but that was taken by\nall those other systems mentioned in the previous paragraph...).  These \"...::ConfigData\"\nmodules contain the configuration data, as well as publicly accessible methods for querying\nand setting (yes, actually re-writing) the configuration data.  The \"configdata\" script\n(whose docs you are currently reading) is merely a front-end for those methods.  If you wish,\nyou may create alternate front-ends.\n\nThe two types of data that may be stored are called \"config\" values and \"feature\" values.  A\n\"config\" value may be any perl scalar, including references to complex data structures.  It\nmust, however, be serializable using \"Data::Dumper\".  A \"feature\" is a boolean (1 or 0)\nvalue.\n",
            "subsections": []
        },
        "USAGE": {
            "content": "This script functions as a basic getter/setter wrapper around the configuration of a single\nmodule.  On the command line, specify which module's configuration you're interested in, and\npass options to get or set \"config\" or \"feature\" values.  The following options are\nsupported:\n\nmodule\nSpecifies the name of the module to configure (required).\n\nfeature\nWhen passed the name of a \"feature\", shows its value.  The value will be 1 if the feature\nis enabled, 0 if the feature is not enabled, or empty if the feature is unknown.  When no\nfeature name is supplied, the names and values of all known features will be shown.\n\nconfig\nWhen passed the name of a \"config\" entry, shows its value.  The value will be displayed\nusing \"Data::Dumper\" (or similar) as perl code.  When no config name is supplied, the\nnames and values of all known config entries will be shown.\n\nsetfeature\nSets the given \"feature\" to the given boolean value.  Specify the value as either 1 or 0.\n\nsetconfig\nSets the given \"config\" entry to the given value.\n\neval\nIf the \"--eval\" option is used, the values in \"setconfig\" will be evaluated as perl code\nbefore being stored.  This allows moderately complicated data structures to be stored.\nFor really complicated structures, you probably shouldn't use this command-line\ninterface, just use the Perl API instead.\n\nhelp\nPrints a help message, including a few examples, and exits.\n",
            "subsections": []
        },
        "AUTHOR": {
            "content": "Ken Williams, kwilliams@cpan.org\n",
            "subsections": []
        },
        "COPYRIGHT": {
            "content": "Copyright (c) 1999, Ken Williams.  All rights reserved.\n\nThis library is free software; you can redistribute it and/or modify it under the same terms\nas Perl itself.\n",
            "subsections": []
        },
        "SEE ALSO": {
            "content": "Module::Build(3), perl(1).\n\n\n\nperl v5.30.0                                 2020-01-30                              CONFIGDATA(1p)",
            "subsections": []
        }
    },
    "summary": "configdata - Query or change configuration of Perl modules",
    "flags": [],
    "examples": [],
    "see_also": [
        {
            "name": "Build",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/Build/3/json"
        },
        {
            "name": "perl",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/perl/1/json"
        }
    ]
}