npm升级所有可更新包
使用npm管理node的包,可以使用npm update <name>
对单个包升级,对于npm的版本大于 2.6.1
,可以使用命令:
npm install -g
升级全局的本地包。
对于版本小于2.6.1
的一个一个包的升级实在是太麻烦,就想找到一个升级所有本地包的方法,找到两个比较好的方式:shell脚本
和npm-ckeck
shell脚本
使用shell脚本升级npm包,首先所在找到需要升级的包和版本号,再使用npm install
完成升级。npm -g
是管理本地全局包的命令。通过npm -g outdated
可以查看那些包有更新:
npm -g outdated
Package Current Wanted Latest Location
appium 1.5.2 1.5.3 1.5.3
bower 1.7.0 1.7.9 1.7.9
cordova 5.4.1 6.2.0 6.2.0
eslint 2.13.0 3.0.0 3.0.0
fsevents 1.0.8 1.0.12 1.0.12
grommet 0.4.1 0.6.9 0.6.9
requirejs 2.1.22 2.2.0 2.2.0
这里列出来了,当前版本,和最后的版本,只需要得到所有需要升级的包名和版本号就可以使用npm -g install <name>
直接升级了。npm -g outdated
还可以使用目录的方式展示,再从中提取出包名和版本号。
npm -g outdated --parseable --depth=0
/usr/local/lib/node_modules/appium:appium@1.5.3:appium@1.5.2:appium@1.5.3
...
在通过cut
命令就可以得到最后要升级版本号和包名:
npm -g outdated --parseable --depth=0 | cut -d: -f2
appium@1.5.3
.....
完整的脚本:
#!/bin/sh
set -e
#set -x
for package in $(npm -g outdated --parseable --depth=0 | cut -d: -f2)
do
npm -g install "$package"
done
脚本下载地址:https://github.com/jjz/script/blob/master/npm-upgrade.sh
npm-check
npm-check是用来检查npm依赖包是否有更新,错误以及不在使用的,我们也可以使用npm-check进行包的更新。
安装npm-check:
npm install -g npm-check
检查npm包的状态:
npm-check -u -g
通过上下键可以移动光标,使用空格键可以选择需要处理的包,回车直接进行处理。
选择npm@3.10.2
包升级到3.10.3
:
? Choose which packages to update. npm@3.10.3
$ npm install --global npm@3.10.3 --color=always
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
/usr/local/lib
└─┬ npm@3.10.3
├── aproba@1.0.4
├── has-unicode@2.0.1
└── read-package-tree@5.1.5
[npm-check] Update complete!
[npm-check] npm@3.10.3
[npm-check] You should re-run your tests to make sure everything works with the updates.
通过以上两种方式可以更便利的管理本地的npm
包。
参考:https://gist.github.com/othiym23/4ac31155da23962afd0e
npm升级所有可更新包的更多相关文章
- npm升级package.json依赖包到最新版本号
转载自:https://blog.csdn.net/syaivin/article/details/79388244?utm_source=blogxgwz1 1.安装: npm install -g ...
- npm发布包以及更新包还有需要注意的几点问题(这里以发布vue插件为例)
前言 在此之前,你需要去npm官网注册一个属于自己的账号,记住自己的账户名以及密码.邮箱,后面会用的到.第一步,安装webpack简易框架 vue init webpack-simple marque ...
- npm更新包
方法一手动跟新: 手动修改package.json中依赖包版本,执行npm install --force,强制从远程下载所有包更新本地包 方法二使用第三方插件: npm install -g npm ...
- 如何发布一个包到npm && 如何使用自己发布的npm包 && 如何更新发布到npm的package && 如何更新当前项目的包?
如何发布一个包到npm First 在https://www.npmjs.com注册一个账号. Second 编辑好项目,文件大致如下: 其中,gitignore可以如下: .DS_Store nod ...
- npm 更新包
方法一手动跟新: 手动修改package.json中依赖包版本,执行npm install --force,强制从远程下载所有包更新本地包 方法二使用第三方插件: npm install -g npm ...
- CentOS 通过yum来升级php到php5.6,yum upgrade php 没有更新包怎么办?
在文章中,我们将展示在centOS系统下如何将php升级到5.6,之前通过yum来安装lamp环境,直接升级的话,提示没有更新包,也就是说默认情况下php5.3.3是最新 1.查看已经安装的php版本 ...
- CentOS 通过yum来升级php到php5.6,yum upgrade php 没有更新包
在文章中,我们将展示在centOS系统下如何将php升级到5.6,之前通过yum来安装lamp环境,直接升级的话,提示没有更新包,也就是说默认情况下php5.3.3是最新 1.查看已经安装的php版本 ...
- NPM 使用及npm升级中问题解决
NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种: 允许用户从NPM服务器下载别人编写的第三方包到本地使用. 允许用户从NPM服务器下载并 ...
- windows系统下npm升级的正确姿势以及原理
本文来自网易云社区 作者:陈观喜 网上关于npm升级很多方法多种多样,但是在windows系统下不是每种方法都会正确升级.其中在windows系统下主要的升级方法有以下三种: 首先最暴力的方法删掉no ...
随机推荐
- jeecg使用uploadify上传组件
在jeecg框架的系统内使用uploadify组件进行上传操作,有时无法正常发送请求,一直被重定向到登录请求,有可能使系统对上传操作进行了过滤,需要将这个上传请求放到非拦截序列里,才能正常使用. 第二 ...
- nuc 第二届山西省大学生程序设计大赛 魔力手环
problem 很妙啊--发现状态转移矩阵每一行都可以由上一行平移得到,每次只算第一行然后平移,\(O(n^3)\) 就变成了 \(O(n^2)\). #include <iostream> ...
- loj2001 「SDOI2017」树点涂色
there #include <iostream> #include <cstdio> using namespace std; int n, m, dfn[100005], ...
- 【java基础 14】锁的粒度:ThreadLocal、volatile、Atomic和Synchronized
导读:题目中提到的几个关键字,分别是解决并发问题中,加锁所使用到的几个关键字,每个关键字代表的锁的粒度 不同,本篇博客,主要是从概念定义上,区分这几个关键字的应用场景.(PS:睡梦中,依稀记得有回面试 ...
- NuGet之控制台管理程序包
NuGet作为VS的扩展程序,已经做好了UI,我们可以通过Manage NuGet Packages 的对话框.这里我们主要说说如何通过控制台进行包管理.使用命令行的方式,其实也是有其好处,对 ...
- 九度oj 题目1356:孩子们的游戏(圆圈中最后剩下的数)
题目描述: 每年六一儿童节,JOBDU都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此.HF作为JOBDU的资深元老,自然也准备了一些小游戏.其中,有个游戏是这样的:首先,让小朋友们围成一个大圈. ...
- PHP curl 封装 GET及POST方法很不错的
<?php function curl_get($url, array $params = array(), $timeout = 5) { $ch = curl_init(); curl_se ...
- kb-07线段树--10--dfs序建树
/* hdu3974 dfs序建树,然后区间修改查询: */ #include<iostream> #include<cstdio> #include<cstring&g ...
- [AHOI2008]逆序对(dp)
小可可和小卡卡想到Y岛上旅游,但是他们不知道Y岛有多远.好在,他们找到一本古老的书,上面是这样说的: 下面是N个正整数,每个都在1~K之间.如果有两个数A和B,A在B左边且A大于B,我们就称这两个数为 ...
- eclipse 的SVN安装
打开eclipse -> Help ->Install New Software选项, 点击Add按钮 根据需要,添加自己需要的版本svn控制器的版本,填写name和url,点击ok. ...