Это, безусловно, связано с этим вопросом , но я чувствую, что он не пересекается, поэтому здесь мы идем. Как я могу получить функциональность следующей команды в Ubuntu (и / или Debian в качестве бонуса):
yum whatprovides 'perl(Foo::Bar)'
Очевидно, я могу попытаться положиться на пакет, каким-то образом оказавшись в структуре папок, напоминающей пространства имен в Perl, но я ищу что-то эквивалентное, то есть одинаково краткое и тривиальное. Однако, если в Ubuntu это работает не так кратко, я могу использовать более длинный путь и создать свою собственную функцию.
Пожалуйста, рассмотрите 10.04 или новее для этого вопроса.
Если вы ищете похожую функцию apt / dpkg, я не знаю ее, но вы можете использовать это:
dpkg -S $(cpan -D Net::Cmd | grep pm | awk -F '/' '{print $NF}')
perl-modules: /usr/share/perl/5.14.2/IPC/Cmd.pm
perl-modules: /usr/share/perl/5.14.2/Net/Cmd.pm
Вы можете использовать cpan -D module
, чтобы найти основную информацию о модуле :
cpan -D Net::Cmd
Going to read '/home/braiam/.cpan/Metadata'
Database was generated on Fri, 16 Aug 2013 21:53:02 GMT
Net::Cmd
-------------------------------------------------------------------------
For command based protocols (FTP, SMTP etc)
S/SH/SHAY/libnet-1.23.tar.gz
/usr/share/perl/5.14/Net/Cmd.pm
Installed: 2.29
CPAN: 2.30 Not up to date
Graham Barr (GBARR)
gbarr@pobox.com
Затем разберите путь модуля, в моем случае я ленив, вы можете использовать все, что вам нравится, чтобы сделать это:
cpan -D Net::Cmd | grep pm | awk -F '/' '{print $NF}'
Cmd.pm
Затем используйте подстановку команд:
dpkg -S $(cpan -D Net::Cmd | grep pm | awk -F '/' '{print $NF}')
perl-modules: /usr/share/perl/5.14.2/IPC/Cmd.pm
perl-modules: /usr/share/perl/5.14.2/Net/Cmd.pm
Надежда полезна для тебя. Кстати, для этого требуется установить cpan (что используется в большинстве установок по умолчанию).