21-npm 命令

官网:https://www.npmjs.cn/cli/view/

常用命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
npm help <某命令>   # 查看命令帮助


npm init # 初始化一个新的npm项目,跳过npm init命令行接口(CLI)。
npm install # 根据项目中的package.json文件自动下载项目所需的全部依赖。
npm install 包名 包名 # 安装多个
npm install 包名 --save-dev # 安装的包只用于开发环境,不用于生产环境,会出现在package.json文件中的dependencies属性中。
npm install 包名 --save # 安装的包需要发布到生产环境的,会出现在package.json文件中的dependencies属性中。


npm info 包名 # 查看包的详细信息。
npm list 或者 npm ls # 查看当前目录下已安装的node包。
npm list -g # 查看全局已经安装过的node包。
npm search 字符串/正则表达式 # 搜索npm仓库中的包。
npm update # 更新当前项目中安装的所有包。
npm update 包名 # 更新指定包。
npm uninstall 包名 # 卸载指定包。


npm logout # 退出npm的登录状态。
npm login # 登录npm,输入用户名和密码。
npm whoami # 查看当前登录的用户名。


npm cache clean # 清理npm缓存。
npm cache verify # 检查npm缓存的有效性。


npm config get 字段名 # 获取npm配置的字段值。
npm config set 字段名 值 # 设置npm配置的字段值。
npm config delete 字段名 # 删除npm配置的字段值。
npm config rm 字段名 # 删除指定的配置选项。
npm config mv # 将指定的包配置选项重命名。
npm config list # 列出所有的配置选项。
npm config list [pattern] # 列出所有包含指定模式的配置选项。
npm config edit # 编辑npm的配置文件。
npm config merge 合并文件 # 合并其他配置文件到当前配置文件。


npm config default # 恢复到默认的npm配置选项。
npm config env # 打印出配置相关的环境变量。
npm config diff # 显示当前包和默认配置之间的差异。
npm config diff --json # 以JSON格式显示指定的包和默认配置之间的差异。


npm config get --global # 获取全局指定的配置选项的值。
npm config set --global # 设置全局指定的配置选项的值。
npm config rm --global # 删除全局指定的包配置选项。
npm config mv --global # 将全局指定的包配置选项重命名。
npm config unset --global # 删除全局指定的包配置选项。
npm config edit --global # 在全局配置文件中打开用户配置文件。


npm config ls [-l] # 列出当前包的所有配置选项。
npm config ls-all [-l] # 列出所有包的所有配置选项。
npm config edit-json # 在默认编辑器中打开用户配置的JSON文件。
npm config ls-files # 列出已追踪的包含特定配置的文件的名称。
npm config ls-all-user # 列出所有用户配置选项。
npm config ls-global # 列出全局配置选项。
npm config ls-org # 列出特定组织/公司的所有配置选项。
npm config ls-prefix # 列出特定前缀的所有配置选项。
npm config view [name] # 以可读的方式显示特定的配置选项的值。
npm config edit [name] # 在默认编辑器中打开用户配置文件并编辑特定的配置选项。
npm config init [--user=false] # 初始化一个空的npm配置文件。
npm config save [--global] [--save-to=package.json] [--save-prefix="] [--save-exact=false] [--save-bundle=false]** # 将当前配置选项保存到包中。
npm config get-or-set # 获取或设置配置选项的值。
npm config get-bool [--global] # 获取布尔类型配置选项的值。
npm config get-func [--global] # 获取函数类型配置选项的值。
npm config get-string [--global] * # 获取字符串类型配置选项的值。
npm config get-number [--global] * # 获取数字类型配置选项的值。
npm config get-array [--global] # 获取数组类型配置选项的值。
npm config get-object [--global] # 获取对象类型配置选项的值。
npm config get-url [--global] # 获取URL类型配置选项的值。
npm config set-url [--global] # 设置URL类型配置选项的值。
npm config ls-default-values # 列出npm默认的配置选项值。
npm config rm-context # 删除当前的npm上下文。
npm config describe # 获取描述信息关于配置选项。
npm config set-json [--global] # 设置JSON类型的配置选项的值。
npm config unset-json [--global] # 删除JSON类型的配置选项。
npm config get-json [--global] # 获取JSON类型的配置选项的值。
npm config output # 以列表形式显示与给定模式匹配的所有配置选项的值。
npm config set-script # 设置一个脚本的配置选项的值。
npm config unset-script # 删除一个脚本的配置选项。
npm config get-script # 获取一个脚本的配置选项的值。
npm config get-stream [--global] # 将配置选项的值输出到标准输出流中。
npm config set-stream [--global] # 将配置选项的值设置为从标准输入流中接收的值。


npm dist-tag 标签名 包名 # 给包添加或修改发布标签。
npm tag 包名 标签名 # 给包添加或修改标签。
npm deprecate 包名 消息 # 给包发布废弃警告。
npm run-script 脚本名 # 运行在package.json中定义的脚本。
npm doc 包名 # 查看指定包的文档。
npm home 包名 # 查看指定包的官方文档首页。
npm bug 包名 # 查看指定包的bug列表。
npm view 包名 字段 [值] # 查看包的指定字段值。
npm view 包名 version # 查看指定包的版本号。
npm view 包名 engines # 查看指定包支持的Node.js版本。
npm dedupe 包名 # 消除包之间的重复依赖。
npm version minor # 更新包的版本号为次要版本。
npm version major # 更新包的版本号为主要版本。
npm tag 包名@版本号 # 给指定版本的包添加标签。
npm publish 包名 # 发布包到npm仓库。
npm adduser # 添加用户到npm仓库。
npm unpublish 包名 # 从npm仓库中删除指定的包。

常用命令简写说明

1
2
3
4
-g#--global 的缩写,表示安装到全局目录里
-S#--save 的缩写,表示安装的包将写入package.json里面的dependencies
-D#--save-dev 的缩写,表示将安装的包将写入packege.json里面的devDependencies
i#install的缩写,表示安装

设置默认配置

使用 npm set 命令用来设置环境变量。

也可以用它来为 npm init设置默认值,这些值会保存在 ~/.npmrc文件中。

1
2
3
4
$ npm set init-author-name 'Your name'
$ npm set init-author-email 'Your email'
$ npm set init-author-url 'http://yourdomain.com'
$ npm set init-license 'MIT'

更改全局安装目录

使用npm config命令可以达到此目的。

1
npm config set prefix <目录>

或者手动在 ~/.npmrc文件中进行配置 #

1
prefix = /home/yourUsername/npm

更改目录后记得在系统环境变量 PATH中添加该路径 #

1
2
# .bashrc 文件
export PATH=~/npm/bin:$PATH

npm –save 和 –save-dev

当你为你的模块安装一个依赖模块时,正常情况下你得先安装你需要的模块(在模块根目录下 npm install module-name),然后连同版本号手动将他们添加到模块配置文件package.json中的依赖里(dependencies)。

–save和–save-dev可以省掉你手动修改package.json文件的步骤。

  1. npm install moduleName –save
    简写 -s,将模块安装到项目 node_modules 目录下,也会将模块依赖写入 dependencies 节点,同时运行 npm install 初始化项目时会将模块下载到项目目录下。

  2. npm install moduleName –save-dev
    简写 -d,将模块安装到项目 node_modules 目录下,也会将模块依赖写入 devDependencies 节点,同时运行 npm install 初始化项目时,会将模块下载到项目目录下。

  • dependencies 节点是项目运行时的依赖,当程序上线后仍然需要的依赖,比如 express 这些,这时需要 –save 参数
  • devDependencies 节点是开发依赖,当我们在开发时会用到这些依赖,当项目部署了就不需要了,如 webpack、gulp、babel这些, 这时需要 –save-dev 参数

比如 npm install eslint --save-dev ,其中 –save-dev 表示会把 eslint 安装到 package.json 文件中的 devDependencies 属性中,意思是只是开发阶段用到这个包,上线时就不需要这个包了

npm 5.0+ 版本在默认情况下会将安装的模块添加到 package.json 文件中的 dependencies 列表中。对于较老的 npm 版本,你就必须指定 –save 参数。

npm devDependencies 和 dependencies

  • devDependencies: dependencies是依赖、附属的意思,前缀dev是develop的简写,devDependencies是开发环境下的依赖。
    devDependencies是只会在开发环境下依赖的模块,生产环境不会被打入包内。

  • dependencies: 用户发布环境,生产环境下的依赖。
    dependencies依赖的包不仅开发环境能使用,生产环境也能使用

通过NODE_ENV=developementNODE_ENV=production指定开发还是生产环境。


21-npm 命令
https://flepeng.github.io/021-frontend-nodejs-13-包管理-01-nodejs-npm-21-npm-命令/
作者
Lepeng
发布于
2021年8月4日
许可协议