LinuxCommandLibrary

conda-search

Search for available Conda packages

TLDR

Search for a specific package

$ conda search [package_name]
copy

Search for a package along with its details
$ conda search [package_name] [[-i|--info]]
copy

Search for packages containing string in the package name
$ conda search "*string*"
copy

Search for specific version of the package
$ conda search "[package_name]>=[package_version]"
copy

Search a package within a specific channel
$ conda search [channel]::[package_name]
copy

Search if package is installed in any local environments
$ conda search --envs [package_name]
copy

SYNOPSIS

conda search [options] [regex]

PARAMETERS

--name
    Search only for the specified package name (supports regex)

--channel
    Restrict search to specific channel, e.g., conda-forge

--override-channels
    Ignore usual channel rules; use only --channel specified

--json
    Output results in JSON format instead of table

--reverse
    Reverse the order of package listings

--info
    Show detailed information for the package only

--offline
    Work offline, using cached index data

--use-local
    Search local build folder instead of remote index

--subdir
    Target specific subdirectory, e.g., linux-64

--platform
    Specify platform for search, e.g., linux-64

--exact
    Require exact package name match, no fuzzy search

--use-latest
    Show only the latest version of each package

--show-channel-urls
    Display full channel URLs in output

DESCRIPTION

The conda search command is a powerful tool within the conda package manager ecosystem, used to query and discover available packages in configured channels. It allows users to search for packages by name, regular expression, or specification, displaying details such as versions, build strings, and dependencies. This is essential for developers and data scientists managing Python, R, and other language environments via Anaconda or Miniconda.

By default, it lists matching packages from all channels in a tabular format, showing package name, version, build, and channel. Users can refine searches with options for specific channels, platforms, or exact matches, making it invaluable for resolving dependencies before installation. When combined with --json, it outputs structured data suitable for scripting. Offline mode and local index usage support air-gapped environments.

Unlike traditional package managers like apt or yum, conda's search spans multiple channels (e.g., defaults, conda-forge), providing cross-platform (Linux, macOS, Windows) visibility. It's particularly useful in reproducible research workflows, ensuring package availability across subdirectories like linux-64 or noarch.

CAVEATS

Requires conda installation; remote searches need internet unless --offline; results depend on channel configuration via conda config; no wildcard glob support, use regex instead.

EXAMPLE USAGE

conda search numpy — Lists all numpy versions.
conda search --channel conda-forge --platform linux-64 pandas — Forge-specific Linux search.
conda search 'py.*qt' --json — Regex JSON output.

OUTPUT COLUMNS

Default table: # (name), | (version), | (build), | (size), | (channel). Use --info for full metadata.

HISTORY

Introduced with conda 3.0 in 2013 as part of Anaconda's open-source package manager (roots in 2012 Continuum Analytics project). Evolved with multi-channel support in 4.x series; now maintained by conda-forge community.

SEE ALSO

conda(1), conda-install(1), conda-list(1), apt-cache(8), dnf search(8)

Copied to clipboard