是否可以在 conda 中按包描述进行搜索?

问题描述

我习惯于在基于 Debian 的发行版下使用 apt 搜索和安装软件包,它的一个有用功能是您也可以在软件包的描述中进行搜索,因此您无需知道确切的要找到它的包的名称。它可以以探索性的方式使用。例如,假设我正在搜索函数式编程相关的包,但没有想到特定的包。我可以这样做:

(base) user@desktop:~$ apt-cache search functional | grep 'programming'
libio-async-perl - modules for asynchronous event-driven programming
libjs-underscore - JavaScript's functional programming helper library
afnix-doc - Compiler and run-time for the AFNIX programming language (documentation)
elpa-agda2-mode - dependently typed functional programming language — emacs mode
libavutil-dev - FFmpeg library with functions for simplifying programming - development files
libavutil56 - FFmpeg library with functions for simplifying programming - runtime files
libghc-agda-doc - dependently typed functional programming language; documentation
libghc-generic-deriving-dev - generic programming library for generalised deriving
libghc-generic-deriving-doc - generic programming library for generalised deriving; documentation
libghc-reactive-banana-dev - Library for functional reactive programming (FRP)
libghc-reactive-banana-doc - Library for functional reactive programming (FRP); documentation
elixir - functional Meta-programming aware language
elpa-ess - Emacs mode for statistical programming and data analysis
faust - functional programming language for realtime audio applications
faust-common - functional programming language for realtime audio applications - common files
fsharp - functional-first programming language - compiler for the CLI
golang-github-go-ldap-ldap-dev - Basic LDAP v3 functionality for the Go programming language
golang-gopkg-ldap.v3-dev - basic LDAP v3 functionality for the GO programming language
hsbrainfuck - interpreter for the brainfuck programming language
libfaust2 - functional programming language for realtime audio applications - libraries
libfsharp-core4.3-cil - functional-first programming language - core runtime library
libfsharp-data-typeproviders4.4-cil - functional-first programming language - data integration library
libghc-generic-deriving-prof - generic programming library for generalised deriving; profiling libraries
libghc-reactive-banana-prof - Library for functional reactive programming (FRP); profiling libraries
libparanoid-perl - module for safer,more secure programming
libreact-ocaml - functional reactive programming in OCaml (plugins)
libreact-ocaml-dev - functional reactive programming in OCaml
lua-moses - Utility library for functional programming in Lua
node-underscore - JavaScript's functional programming helper library - NodeJS
r-cran-lambda.r - GNU R modeling data with functional programming
r-cran-purrr - GNU R functional programming tools
rust-doc - Rust systems programming language - Documentation
rust-src - Rust systems programming language - source code
rustc - Rust systems programming language
urweb - purely functional language for web programming
wadc - programming environment for creating Doom maps

现在我安装了 Anaconda,并注意到提供的包管理器 conda 在运行“conda search”时似乎只按名称搜索包。有没有办法让它表现得像 apt 一样,也可以通过描述搜索

解决方法

不,不能使用 conda search 搜索包描述。 conda search 的查询结果,包括带有 --info|-i 标志的查询结果,不包含包描述信息。

从 Anaconda Cloud 检索包摘要的功能有限。这由包 anaconda show 中的 anaconda-client 命令提供,并且仅提供精确匹配(通道和包)。例如,

(base) $ anaconda show 'conda-forge/r-purrr'
Using Anaconda API: https://api.anaconda.org
Name:    r-purrr
Summary: A complete and consistent functional programming toolkit for R.
Access:  public
Package Types:  conda
Versions:
   + 0.2.2
   + 0.2.3
   + 0.2.4
   + 0.2.5
   + 0.3.1
   + 0.3.2
   + 0.3.3
   + 0.3.4

To install this package with conda run:
     conda install --channel https://conda.anaconda.org/conda-forge r-purrr

但是,这不会像在 OP 中所做的那样搜索包描述,而只会检索有关查询的信息。