Node.js相关全局模块常用命令

Node.js

参数

参数 描述 示例
-u, --update 打印Node.js的版本号 node -v

npm

安装或升级

1
2
3
4
npm install -g npm

// 强制升级npm
sudo npm install npm -g --force

参数

参数 描述
npm -h 帮助
npm -v 查看npm版本
npm init 在当前文件夹初始化项目
npm init <app_name>
npm init hello-world
创建一个新项目
npm install 安装所有依赖
npm install <package_name>
npm install moment
安装指定软件包
npm uninstall <package_name>
npm uninstall moment
卸载指定软件包
npm start 启动项目
npm run [script]
npm run dev
运行package.json/scripts中的命令
npm update [-g] [<package_name>]
npm update
npm update moment
更新所有软件包
更新软件包
npm publish --access public 发布公开软件包到仓库
npm config set proxy <proxy_url>
npm config set proxy http://127.0.0.1:1087
设置http代理
npm config set https-proxy <proxy_url>
npm config set https-proxy http://127.0.0.1:1087
设置https代理
npm config delete proxy 取消http代理
npm config delete https-proxy 取消https代理
npm config set registry <registry_url>
npm config set registry http://registry.npmjs.org
设置仓库地址
npm config list 查看配置

nodemon

全局安装或升级

1
npm install -g nodemon

仅项目安装

1
npm install --save-dev nodemon

执行js并监听变化

1
nodemon index.js

pm2/pm2dev

安装或升级

1
npm install -g pm2

参数

参数 描述 示例
-h, --help 帮助 pm2 -h
-v,-V, --version 查看版本号 pm2 -v
start 启动并守护程序 pm2 start index.js
start --name <app_name> 指定应用名称 pm2 start index.js --name app
start --watch 监听文件改动并重启 pm2 start index.js --watch
start --max-memory-restart <200MB> 设置应用重新加载的内存阈值 pm2 start index.js --max-memory-restart 200MB
start --log <log_path> 指定日志文件 pm2 start index.js --log /var/log/pm2.log
start -i <number> 指定进程数量(多进程负载均衡) pm2 start index.js -i max
restart <app_name> 重启应用 pm2 restart app
restart all 重启所有应用 pm2 restart all
reload <app_name> 重载应用 pm2 reload app
reload all 重载所有应用 pm2 reload all
stop <app_name> 停止应用 pm2 stop app
stop all 停止所有应用 pm2 stop all
delete <app_name> 删除应用 pm2 delete app
delete all 删除所有应用 pm2 delete all
list,ls,status 列出所有应用的状态 pm2 ls
logs 实时显示日志 pm2 logs
logs <app_name> 实时显示某个应用的日志 pm2 logs app
startup 生成启动脚本并开机自启动 pm2 startup
unstartup 删除启动脚本并取消开机自启动 pm2 unstartup
save 保存进程列表 pm2 save
resurrect 恢复pm2 save保存的进程列表 pm2 resurrect
monit 基于终端的仪表盘 pm2 monit
plus 基于Web的仪表盘,带有跨服务器的诊断系统 pm2 plus

pm2-logrotate

安装或升级

1
pm2 install pm2-logrotate

参数

参数 默认值 描述
max_size
pm2 set pm2-logrotate:max_size 10M
10M 日志文件超过此大小开始分割
retain
pm2 set pm2-logrotate:max_size 500
30 最多保留retain个日志文件
compress
pm2 set pm2-logrotate:compress false
false 是否通过gzip压缩日志
dateFormat
pm2 set pm2-logrotate:dateFormat YYYY-MM-DD_HH-mm-ss
YYYY-MM-DD_HH-mm-ss 日志文件名的时间格式
rotateModule
pm2 set pm2-logrotate:rotateModule true
true 像其它应用一样旋转pm2模块的日志
workerInterval
pm2 set pm2-logrotate:workerInterval 60
30 检查日志大小的间隔(单位:秒,最小为1)
rotateInterval
pm2 set pm2-logrotate:rotateInterval 0 0 * * *
0 0 * * *
(每天0点)
根据时间分割
TZ
pm2 set pm2-logrotate:TZ Etc/GMT+1
系统时间 这是用于偏移已保存日志文件的标准时区数据库

// 最多保留500个文件,每60秒检查一此文件大小,默认10M一个文件

1
pm2 set pm2-logrotate:retain 500 && pm2 set pm2-logrotate:workerInterval 60

*Cron风格

1
2
3
4
5
6
7
8
9
*    *    *    *    *    *
┬ ┬ ┬ ┬ ┬ ┬
│ │ │ │ │ |
│ │ │ │ │ └ day of week (0 - 7) (0 or 7 is Sun)
│ │ │ │ └───── month (1 - 12)
│ │ │ └────────── day of month (1 - 31)
│ │ └─────────────── hour (0 - 23)
│ └──────────────────── minute (0 - 59)
└───────────────────────── second (0 - 59, OPTIONAL)

nvm

Node.js的版本管理器

安装或升级

macOS

1
2
3
4
5
// 安装
brew install nvm

// 升级
brew upgrade nvm

Windows:nvm-windows

参数

参数 描述 示例
-h, --help 帮助 nvm -h
-v, --version 查看nvm版本 nvm -v
install <version> 安装某个版本 nvm install 12.16.0
uninstall <version> 卸载某个版本 nvm uninstall 12.16.0
use <version> 使用某个版本 nvm use 12.16.0
current 显示当前激活的版本 nvm current
ls 列出已安装的版本 nvm ls
ls-remote 列出远程可用于安装的版本 nvm ls-remote
ls-remote --lts 列出远程可用于安装的长期支持版本 nvm ls-remote --lts

npm-check

检查和更新npm依赖

安装或升级

1
npm install -g npm-check

参数

参数 描述 示例
-u, --update 用交互式UI选择要更新的模块 npm-check -u
-y, --update-all 无任何提示自动更新所有模块 npm-check -y
-g, --global 检查全局安装的模块 npm-check -g
npm-check -g -u
-s, --skip-unused 跳过未使用模块的通知
-p, --production 仅检查dependencies
-d, --dev-only 仅检查devDependencies
-i, --ignore 忽略指定的模块(支持通配符) npm-check -i babel-*
-E, --save-exact 确切版本将保存在package.json中
--specials 查找未使用的依赖项时,请检查特殊文件
--color, --no-color 启用或禁用颜色支持
--emoji, --no-emoji 启用或禁用表情符号支持
--spinner, --no-spinner 启用或禁用微调器
--debug 显示Debug输出