如何查找已安装Node.js或npm包的版本?
这将打印npm本身的版本:
npm -v <package-name>
这将打印一个隐藏的错误:
npm version <package-name>
这将在注册表中打印软件包版本(即可用的最新版本):
npm view <package-name> version
如何获取已安装的版本?
如何查找已安装Node.js或npm包的版本?
这将打印npm本身的版本:
npm -v <package-name>
这将打印一个隐藏的错误:
npm version <package-name>
这将在注册表中打印软件包版本(即可用的最新版本):
npm view <package-name> version
如何获取已安装的版本?
当前回答
npm list--depth 0是显示所有版本库的命令,但您可以使用npm check。
npm检查是一个很好的库,可以管理所有与版本系统事件相关的事情。它将显示库版本、新版本更新和未使用的版本等。
要安装它,只需运行:
npm install -g npm-check
简单地运行
npm-check
查看屏幕截图。它显示了包版本、新版本更新和未使用版本的所有信息。
它也适用于全球。试试看。
其他回答
这有一个简单的方法。首先,转到所需的位置(package.json所在的位置)。只需将package.json文件作为文本编辑器打开即可。
通过此方法,您可以在一个位置找到所有模块版本。
package.json看起来像这样
{
"name": "raj",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"bcrypt": "^5.0.1",
"connect-flash": "^0.1.1",
"dotenv": "^10.0.0",
"ejs": "^3.1.6",
"express": "^4.17.1",
"express-session": "^1.17.2",
"mysql2": "^2.2.5",
"passport": "^0.4.1",
"passport-local": "^1.0.0",
"sequelize": "^6.6.2",
"socket.io": "^4.1.2"
}
}
因此,您可以读取pc中安装的每个依赖项(模块),即“socket.io”:“^4.1.2”,因此“socket.io'”的版本为4.1.2。
另一种快速了解本地安装的软件包及其依赖关系的方法是:
npm list --depth=0
这让你有点像
├── bower@0.8.6
├── grunt@0.4.1
├── grunt-bower-requirejs@0.4.3
├── grunt-contrib-clean@0.4.1
├── grunt-contrib-coffee@0.7.0
├── grunt-contrib-copy@0.4.1
├── grunt-contrib-imagemin@0.1.4
├── grunt-contrib-jshint@0.1.1
├── grunt-contrib-livereload@0.1.2
├── grunt-contrib-requirejs@0.4.1
├── grunt-regarde@0.1.1
└── grunt-svgmin@0.1.0
显然,对于npm列表-g--depth=0,也可以在全局范围内执行同样的操作。
如果您安装了大量软件包,则此方法更清晰。
要了解哪些包需要更新,可以使用npm-outaged-g-depth=0。
要列出带有版本号的本地软件包,请使用:
npm ls—深度=0
要列出带有版本号的全局软件包,请使用:
npm ls-g—深度=0
这里有一个可移植的Unix(使用grep和sed)一行程序,它返回全局安装的npm包的版本字符串(从-pg中删除g以查询本地包):
npm ll -pg --depth=0 grunt | grep -o "@.*:" | sed 's/.$//; s/^.//'
输出:
0.4.5
npm ll输出一个可解析字符串,格式如下:/usr/lib/node_modules/npm:npm@2.14.8:;grep命令提取@和:之间的值,包括;sed命令删除周围的字符。
您也可以使用以下命令检查版本:
npm信息<包名>版本