NPM (node package manager)是node模块的管理工具。同于Java的Mawven
,Ubuntu的age-get
,CentOS的yum
命令详解
模块安装
npm install
安装当前目录下package.json中dependencies配置的模块.
npm install <tarball file>
安装本地的模块文件
npm install <tarball url>
安装指定URL的模块
npm install <folder>
安装本地文件系统中制定目录包含的模块
模块更新
npm install <name> [--save | --save-dev | --save-optional]
安装模块的时候并同时更新package.json中的版本信息
--save 更新到package.json的dependencies选项中
...
安装指定版本
npm install <name>@<version range>
如: npm install async@">=0.2.0 <0.2.9
--force
强制拉取远程资源,即使本地已经安装了这个模块
显示npm的bin目录
npm bin
设置npm配置
npm config set <key> <value> [-global]
使用-global
配置全局参数
如:
设置代理:
npm config set proxy=http://localhost:1080
设置npm镜像地址:
npm config set registry http://npm.oa.com
获取npm配置
npm config get <key>
删除npm配置
npm config delete <key>
命令行打开npm配置
npm config edit
交互式创建package.json
npm init
创建模块压缩包
npm pack [<pkg>[<pkg> ... ] ]
如果没有参数npm会打包当前模块目录
发布模块
npm publish <tarball>
经过gzip压缩并归档的一个URL或文件路径,该压缩包包含单个目录,该目录中有package.json文件
npm publish <folder>
包括package.json文件的目录
删除模块
npm rm <name>
npm r <name>
npm uninstall <name>
npm un <name>
不会删除package.json文件对应的dependencies选项中对应的依赖配置
查找模块
npm serach [search terms..]
npm s [search terms..]
npm se [search terms..]
更新模块
npm update [-g]<name>[<name> ...]]
更新指定name列表中的模块,-g参数更新全局安装的模块
如果没有指定name,且不是在某个模块内,会更新当前目录依赖的所有包(包括全局);如果在某个模块内,会更新该模块依赖的模块,所以使用npm update的时候最好在某个模块内使用,以免影响其他模块
执行脚本
npm start [<name>]
npm stop [<name>]
npm test [<name>]
运行package的start脚本,该脚本写在package.json文件scripts的start字段中.该字段的值可以是当前系统控制台可执行的脚本,也可以是当前系统可执行文件的路径。
如果不传name参数,则执行当前目录下package.json文件中定义的脚本。
Blog: (https://superzee.github.io)
Github: (https://github.com/SuperZee)