npm-view

查看注册表信息

选择 CLI 版本

概要

npm view [<package-spec>] [<field>[.subfield]...]
aliases: info, show, v

描述

此命令显示有关包的信息并将其打印到标准输出。

例如,要查看注册表中关于 connect 包的信息,可以运行以下命令

npm view connect

如果未指定,默认版本为 "latest"

可以在包描述符之后指定字段名称。例如,要显示版本为 0.3.5ronn 包的依赖项,可以执行以下操作

npm view [email protected] dependencies

默认情况下,npm view 显示有关当前项目上下文的信息(通过查找 package.json)。要显示当前项目的字段数据,请使用文件路径(即 .

npm view . dependencies

可以通过句点分隔来查看子字段。要查看 npm 最新版本的 git 存储库 URL,可以运行以下命令

npm view npm repository.url

这使得通过一些 shell 脚本轻松查看有关依赖项的信息。例如,要查看 ronn 依赖的 opts 版本的所有数据,可以编写以下脚本

npm view opts@$(npm view ronn dependencies.opts)

对于数组字段,请求非数字字段将返回列表中所有对象的全部值。例如,要获取 express 包的所有贡献者电子邮件地址,可以运行以下命令

npm view express contributors.email

您也可以使用方括号中的数字索引来专门选择数组字段中的某一项。要仅获取列表中第一个贡献者的电子邮件地址,可以运行以下命令

npm view express contributors[0].email

如果查询的字段值是对象的属性,则应运行以下命令

npm view express time'[4.8.0]'

可以指定多个字段,并将它们逐个打印。例如,要获取所有贡献者的姓名和电子邮件地址,可以执行以下操作

npm view express contributors.name contributors.email

如果“Person”字段将以对象形式显示,则它们将以字符串形式显示。因此,例如,这将以简短的字符串格式显示 npm 贡献者的列表。(有关详细信息,请参阅 package.json。)

npm view npm contributors

如果提供了版本范围,则将为每个匹配的包版本打印数据。这将显示哪个版本的 jsdom 由每个匹配的 yui3 版本要求

npm view yui3@'>0.5.4' dependencies.jsdom

要显示 connect 包的版本历史记录,可以执行以下操作

npm view connect versions

配置

json

  • 默认值:false
  • 类型:布尔值

是否输出 JSON 数据,而不是正常输出。

  • npm pkg set 中,它允许在将设置值保存到 package.json 之前使用 JSON.parse() 对其进行解析。

并非所有 npm 命令都支持。

workspace

  • 默认值
  • 类型:字符串(可以设置多次)

启用在当前项目的已配置工作区的上下文中运行命令,同时通过仅运行此配置选项定义的工作区进行过滤。

对于 workspace 配置,有效值为:

  • 工作区名称
  • 工作区目录的路径
  • 父工作区目录的路径(将导致选择该文件夹中的所有工作区)

当为 npm init 命令设置时,可以将其设置为尚未存在的工作区的文件夹,以创建该文件夹并将其设置为项目中的全新工作区。

此值不会导出到子进程的环境中。

workspaces

  • 默认值:null
  • 类型:null 或布尔值

设置为 true 以在所有已配置工作区的上下文中运行命令。

明确将其设置为 false 将导致像 install 这样的命令完全忽略工作区。当未明确设置时

  • node_modules 树进行操作的命令(安装、更新等)将把工作区链接到 node_modules 文件夹中。- 执行其他操作的命令(测试、执行、发布等)将对根项目进行操作,除非 workspace 配置中指定了一个或多个工作区。

此值不会导出到子进程的环境中。

include-workspace-root

  • 默认值:false
  • 类型:布尔值

在为命令启用工作区时,包括工作区根目录。

当为 false 时,通过 workspace 配置指定单个工作区,或通过 workspaces 标志指定所有工作区,将导致 npm 仅对指定的工作区进行操作,而不对根项目进行操作。

此值不会导出到子进程的环境中。

输出

如果仅输出单个版本的单个字符串字段,则它将不会被着色或引用,以允许将输出管道传输到另一个命令。如果字段是对象,则它将作为 JavaScript 对象文字输出。

如果提供了 --json 标志,则输出的字段将为 JSON。

如果版本范围匹配多个版本,则每个打印的值将以其适用的版本为前缀。

如果请求多个字段,则每个字段名前缀为字段名。

参见