cpan − easily interact with CPAN from the command line |
# 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] |
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. |
−a |
Creates the CPAN .pm autobundle with CPAN::Shell−>autobundle. |
−A module [ module ... ] |
Shows the primary maintainers for the specified modules |
−C module [ module ... ] |
Show the "Changes" files for the specified modules |
−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. |
−L author [ author ... ] |
List the modules by the specified authors. |
−h |
Prints a help message. |
|||
−O |
Show the out-of-date modules. |
|||
−r |
Recompiles dynamically loaded modules with CPAN::Shell−>recompile. |
|||
−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. |
c |
Runs a ‘make clean‘ in the specified module’s directories. |
||
f |
Forces the specified action, when it normally would have failed. |
||
i |
Installed the specified modules. |
||
m |
Makes the specified modules. |
||
t |
Runs a ‘make test‘ on the specified modules. |
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 |
* none noted |
Most behaviour, including environment variables and configuration, comes directly from CPAN .pm. |
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. |
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 |
brian d foy, "<bdfoy@cpan.org>" |
Copyright (c) 2001−2006, brian d foy, All Rights Reserved. You may redistribute this under the same terms as Perl itself. |