Perl 5 version 10.0 documentation

cpan

NAME

cpan - easily interact with CPAN from the command line

SYNOPSIS

  1. # with arguments and no switches, installs specified modules
  2. cpan module_name [ module_name ... ]
  3. # with switches, installs modules with extra behavior
  4. cpan [-cfimt] module_name [ module_name ... ]
  5. # without arguments, starts CPAN.pm shell
  6. cpan
  7. # without arguments, but some switches
  8. cpan [-ahrvACDLO]

DESCRIPTION

This script provides a command interface (not a shell) to CPAN. At the moment it uses CPAN.pm to do the work, but it is not a one-shot command runner for CPAN.pm.

Meta Options

These options are mutually exclusive, and the script processes them in this order: [hvCAar]. Once the script finds one, it ignores the others, and then exits after it finishes the task. The script ignores any other command line options.

    10
    -a

    Creates the CPAN.pm autobundle with CPAN::Shell->autobundle.

    10
    -A module [ module ... ]

    Shows the primary maintainers for the specified modules

    10
    -C module [ module ... ]

    Show the Changes files for the specified modules

    10
    -D module [ module ... ]

    Show the module details. This prints one line for each out-of-date module (meaning, modules locally installed but have newer versions on CPAN). Each line has three columns: module name, local version, and CPAN version.

    10
    -L author [ author ... ]

    List the modules by the specified authors.

    10
    -h

    Prints a help message.

    10
    -O

    Show the out-of-date modules.

    10
    -r

    Recompiles dynamically loaded modules with CPAN::Shell->recompile.

    10
    -v

    Print the script version and CPAN.pm version.

Module options

These options are mutually exclusive, and the script processes them in alphabetical order. It only processes the first one it finds.

    10
    c

    Runs a `make clean` in the specified module's directories.

    10
    f

    Forces the specified action, when it normally would have failed.

    10
    i

    Installed the specified modules.

    10
    m

    Makes the specified modules.

    10
    t

    Runs a `make test` on the specified modules.

Examples

  1. # print a help message
  2. cpan -h
  3. # print the version numbers
  4. cpan -v
  5. # create an autobundle
  6. cpan -a
  7. # recompile modules
  8. cpan -r
  9. # install modules ( sole -i is optional )
  10. cpan -i Netscape::Booksmarks Business::ISBN
  11. # force install modules ( must use -i )
  12. cpan -fi CGI::Minimal URI

TO DO

BUGS

* none noted

SEE ALSO

Most behaviour, including environment variables and configuration, comes directly from CPAN.pm.

SOURCE AVAILABILITY

This source is part of a SourceForge project which always has the latest sources in CVS, as well as all of the previous releases.

  1. http://sourceforge.net/projects/brian-d-foy/

If, for some reason, I disappear from the world, one of the other members of the project can shepherd this module appropriately.

CREDITS

Japheth Cleaver added the bits to allow a forced install (-f).

Jim Brandt suggest and provided the initial implementation for the up-to-date and Changes features.

Adam Kennedy pointed out that exit() causes problems on Windows where this script ends up with a .bat extension

AUTHOR

brian d foy, <bdfoy@cpan.org>

COPYRIGHT

Copyright (c) 2001-2006, brian d foy, All Rights Reserved.

You may redistribute this under the same terms as Perl itself.