Как обновить модули perl, которые устанавливаются из CPAN?
в оболочке cpan, только / regexp / или все модули могут быть обновлением, если я хочу обновить модули, установленные только CPAN, как это сделать?
4 ответов
Я предлагаю вам использовать сценарий cpanm "family" для управления модулями perl.
установить cpanm
- пропустить этот шаг, если у вас уже есть
curl -L http://cpanmin.us | perl - --sudo App::cpanminus
- если вы на freebsd, вы можете вместо этого использовать команду fetch (см.: man fetch)
обновление cpanm
- пропустить это, если вы установили его правильно теперь
cpanm --self-upgrade --sudo
установить cpan-устарел
cpanm App::cpanoutdated
- CPAN-устаревшая команда делает то же самое, что и CPAN (r), но IMO лучше использовать из shell
например, только мой ноутбук дает такой результат, как:
marvin:~ jomo$ cpan-outdated
S/SM/SMUELLER/Attribute-Handlers-0.93.tar.gz
D/DR/DROLSKY/Class-Load-0.20.tar.gz
D/DR/DROLSKY/DateTime-TimeZone-1.47.tar.gz
... etc
запустить cpan-устаревшие и обновить модули
cpan-outdated -p | cpanm
изменения
если вы хотите увидеть, что изменен (Change-log), вы можете попробовать установить cpan-listchanges
cpanm App::cpanlistchanges
- и использовать его как:
cpan-listchanges Plack
- тоже посмотрите, что изменилось в Plack между вашим местным и последним на CPAN
# cpan
cpan> h
Display Information (ver 1.9800)
command argument description
a,b,d,m WORD or /REGEXP/ about authors, bundles, distributions, modules
i WORD or /REGEXP/ about any of the above
ls AUTHOR or GLOB about files in the author's directory
(with WORD being a module, bundle or author name or a distribution
name of the form AUTHOR/DISTRIBUTION)
Download, Test, Make, Install...
get download clean make clean
make make (implies get) look open subshell in dist directory
test make test (implies make) readme display these README files
install make install (implies test) perldoc display POD documentation
Upgrade
r WORDs or /REGEXP/ or NONE report updates for some/matching/all modules
upgrade WORDs or /REGEXP/ or NONE upgrade some/matching/all modules
Pragmas
force CMD try hard to do command fforce CMD try harder
notest CMD skip testing
Other
h,? display this menu ! perl-code eval a perl command
o conf [opt] set and query options q quit the cpan shell
reload cpan load CPAN.pm again reload index load newer indices
autobundle Snapshot recent latest CPAN uploads
запуск только ниже команды будет делать то, что вы просите.
cpan> upgrade
вы должны сначала войти в cpan. Затем, один раз в командной строке введите:
r [enter]
это распечатает список обновляемых модулей, которые установлены. После этого списка для работы можно использовать следующие:
cpan upgrade <MODULE NAME>
просто замените имя модуля для обновления.
С уважением,
Джефф
$ cpan Module
и
cpan> install Module
будет обновляться, если доступна более новая версия, и ничего не делать, если у вас уже есть последняя версия.