LinuxCommandLibrary

pip-show

Show installed Python package details

TLDR

Show information about a package

$ pip show [package]
copy

Show all information about a package
$ pip show [[-v|--verbose]] [package]
copy

Show all installed files for a package
$ pip show [[-f|--files]] [package]
copy

SYNOPSIS

pip show [OPTIONS] [PACKAGE-NAME]

PARAMETERS

-h, --help
    Show help message and exit.

-f, --files
    List the files contained in the package.

--report FILE
    Generate a JSON-formatted report to the specified file.

-q, --quiet
    Give less output (additive up to 3 times).

-v, --verbose
    Give more output (additive up to 3 times).

--local
    Only use packages installed in local site-packages.

--user
    Only use packages installed in user site-packages.

--path PATH
    Restrict to the specified installation path.

--no-index
    Ignore package index and find-links URLs.

--no-cache-dir
    Disable pip cache directory.

DESCRIPTION

pip show is a pip subcommand that retrieves and displays comprehensive metadata about a specified installed Python package. It outputs key details including the package name, version, summary, home-page, author, author-email, license, location (installation path), requires (dependencies), and required-by (reverse dependencies).

This command is invaluable for developers inspecting package states in virtual environments or system Python setups. For instance, pip show requests reveals if the HTTP library is installed, its version, and dependencies like urllib3.

Without a package name, it lists all installed packages briefly. It respects the active Python environment and pip configuration, supporting editable installs and wheel metadata. Use with --files to list package contents or --verbose for extended info. Primarily for local installs; does not fetch from PyPI unless the package exists locally.

Ideal for debugging dependency issues, verifying upgrades, or scripting package audits.

CAVEATS

Only displays info for locally installed packages; fails if package not found. Ignores editable installs without --verbose. Global pip options may alter behavior in multi-environment setups.

TYPICAL OUTPUT

Name: requests
Version: 2.31.0
Summary: Python HTTP for Humans.
Location: /path/to/site-packages
Requires: certifi, charset-normalizer, idna, urllib3

NO PACKAGE SPECIFIED

Omitting PACKAGE-NAME lists all installed packages with name and version only.

HISTORY

Introduced in pip 1.3 (January 2012) as pip-inspect, renamed to show in pip 10.0 (2018). Part of PyPA's pip project since 2008, aligning with Python packaging standards like PEP 376.

SEE ALSO

pip list, pip freeze, pip inspect, dpkg-query -s(1), rpm -qi(1)

Copied to clipboard