Node npm操作常用命令行

  1. 安装包
    npm install 包名 执行即会安装这个包和它所依赖的所有包
    别名:npm i(简写)
    npm i 包名@版本号
    npm i 包名@latest 安装最新的稳定版本
    npm i 包名@next 安装最新的未发布版本
    git clone下来的项目,在项目路径执行npm instal就会根据package.json中的安装包信息去下载dependencies和devDependencies中的模块。

  2. npm install 常用配置参数
    -P, --save-prod这是默认配置,可省略。包信息将加入到dependencies,相当于之前的- -S, --save
    -D --save-dev 包信息将加入到devDependencies
    -g --global 全局安装

-P 和 -D 具体区别:

  • -P, --save-prod:生产环境的依赖,也就是项目运行时的包,程序上线后仍然需要依赖
  • -D, --save-dev:开发环境的依赖,就是我们在开发过程中需要的包,只在开发阶段起作用的
  1. 查看node全局包路径
    npm root -g
    (MacOS是在/usr/local/lib/node_modules)

  2. 查看npm全局安装的模块信息
    npm list -g
    npm ls -g
    npm list -g --depth 0(只展示一级目录)

  3. 更新包
    npm update 包名 [-g]
    可选 -D -S -g 指定在什么范围更新包
    update 用 up / upgrade 这俩别名也可

和 npm install 的区别:
对于已经安装的包,package.json中没有明确版本号的(即版本号有^~前缀的)
npm install会忽略(加上-f--force可强制重新安装),--production
npm update会升级
npm install只有加上--production或者环境变量production的时候才会不安装devDependencies的包;而是npm update默认不处理devDependencies的包,除非加上--dev

附:npm 依赖包版本号~^的区别

  • ~会匹配最新的小版本依赖包,如~1.2.3会匹配所有1.2.x版本,但是不会升级到1.3.0
  • ^会匹配最新的大版本依赖包,如^1.2.3会匹配所有1.x.x的包,包括1.3.0,但是不会升级到2.0.0
  • *会安装最新版本的依赖包

若我们在package.json指定了特定版本号,如1.2.3,那升级包的时候需要先手动修改版本号;如依赖包发布了修复了一些小bug的新版本,那么我们npm update的时候,有~^的可以直接升级到相应版本。
但需要注意^版本更新可能比较大,可能会造成项目代码错误,所以建议尽量多使用~来标记版本号,这样可以保证项目不会出现大的问题,也能保证包中的小bug可以得到修复。
版本号写*,缺点同上,可能会造成版本不兼容,慎用!

  1. 批量更新包
    先安装这个第三方包 npm i npm-check-updates -g
    ncu 查看当前项目可更新的包
    如果确定全部升级,则 ncu -u更新package.json
    npm i

  2. 批量检查包npm-check
    先全局安装 npm i npm-check -g
    执行npm-check 会检查可更新、不正确和未使用的依赖包,并建议我们相应的处理命令。

npm-check -u命令:加上-u 即 --update,则会在一个交互界面展示检测结果,我们可以根据需要更新包:用上下箭头移动位置,按空格选中/取消选中,最后按回车确定升级。会同步更新 package.json

  1. 快速初始化项目,生成package.json文件
    npm init -y
    -y表示直接略过所有问答,全部采用默认答案(全部输入yes)

  2. npm卸载包
    npm uninstall 包名
    别名npm un(简写)

  3. 执行js脚本
    node 文件名
    node app.js

  4. 运行package.json里的脚本
    npm run 脚本命令名
    比如package.json内

"scripts": {
    "start": "npm run prod",
    "server": "babel-node ./src/bin/www",
    "server:prod": "node ./dist/bin/www",
    "dev": "NODE_ENV=development npm-run-all server",
    "clean": "rimraf dist",
    "build": "babel ./src --out-dir dist",
    "prod": "NODE_ENV=production npm-run-all clean build server:prod",
    "watch": "nodemon"
  },

如:
npm run watch
npm run prod

  1. 结束正在执行的 node 命令
    按下control+c键

  2. 查看node进程并结束进程
    lsof -i :Port PortNum为端口号
    如:
    lsof -i :8081
    然后得到这个要关闭进程的pid,比如pid是2001
    再关闭它
    kill 2001
    kill -9 2001 强制关闭进程

  3. 通过共享包简化依赖树
    npm dedupe
    别名npm ddp
    当A、B两个包共同依赖的C包有同一版本可以满足时,实际只需要安装1个C包。这个命令可以给其他包共用。
    删除多余的重复包,只留单个并将其向上移动,使多个包能够更有效地共享它们,从而简化整体结构。

你可能感兴趣的:(Node npm操作常用命令行)