1. NAME▲

cpan - easily interact with CPAN from the command line

2. SYNOPSIS ▲

# with arguments and no switches, installs specified modules cpan module_name [ module_name ... ] # with switches, installs modules with extra behavior cpan [-cfimt] module_name [ module_name ... ] # without arguments, starts CPAN.pm shell cpan # without arguments, but some switches cpan [-ahrvACDLO]

3. 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.

3.1. 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.

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

-A module [ module ... ] 4 Shows the primary maintainers for the specified modules

-C module [ module ... ] 4 Show the \f(CW\*(C`Changes\*(C'\fR files for the specified modules

-D module [ module ... ] 4 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.

-L author [ author ... ] 4 List the modules by the specified authors.

-h 4 Prints a help message.

-O 4 Show the out-of-date modules.

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

-v 4 Print the script version and CPAN.pm version.

3.2. Module options ▲

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

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

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

i 4 Installed the specified modules.

m 4 Makes the specified modules.

t 4 Runs a `make test` on the specified modules.

3.3. Examples ▲

# print a help message cpan -h # print the version numbers cpan -v # create an autobundle cpan -a # recompile modules cpan -r # install modules ( sole -i is optional ) cpan -i Netscape::Booksmarks Business::ISBN # force install modules ( must use -i ) cpan -fi CGI::Minimal URI

4. TO DO ▲

5. BUGS ▲

* none noted

6. SEE ALSO ▲

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

7. 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.

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.

8. 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

9. AUTHOR ▲

brian d foy, \f(CW\*(C`<>\*(C'\fR

10. COPYRIGHT ▲

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

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