Chinaunix

标题: 安装包版本判断 [打印本页]

作者: su8610    时间: 2014-08-01 17:36
标题: 安装包版本判断
请大神指点思路,我想写个脚本,自动更新系统的安装包。我的想法是比较163的包跟我系统的包是否有更新,有更新再提示是否下载安装。但是现在在比较方面,没有思路

163源里面是这样的:
yum-3.2.29-43.el6.centos.noarch.rpm
yum-NetworkManager-dispatcher-1.1.30-17.el6_5.noarch.rpm

然后我当前安装的是这样的:
yum-3.2.20-43.el6.centos.noarch.rpm
yum-NetworkManager-dispatcher-1.1.20-17.el6_5.noarch.rpm

请问大神该怎么判断是否163源里面比我的包更高版本呢?
作者: dn833    时间: 2014-08-01 17:54
你直接yum update xxoo就可以了,yum自己会判断是否需要update的
作者: su8610    时间: 2014-08-01 18:19
回复 2# dn833


    如果我没有yum呢?
作者: dn833    时间: 2014-08-02 17:20
rpm -Uvh "http://mirror.163.com/xxoo.rpm"

作者: su8610    时间: 2014-08-02 23:19
回复 4# dn833


    我是想判断是否我的系统安装版本不够新,如何安装暂时不考虑
作者: su8610    时间: 2014-08-02 23:21
或者说我想知道能怎么比较这两个文件,相同的包那个版本更新?然后打印出最新的包名字

A的内容:
yum-3.2.29-43.el6.centos.noarch.rpm
yum-NetworkManager-dispatcher-1.1.30-17.el6_5.noarch.rpm

B的内容:
yum-3.2.20-43.el6.centos.noarch.rpm
yum-NetworkManager-dispatcher-1.1.20-17.el6_5.noarch.rpm
作者: dn833    时间: 2014-08-02 23:41
  1. [root@218 test]# echo "yum-3.2.29-43.el6.centos.noarch.rpm yum-3.2.20-43.el6.centos.noarch.rpm"|awk '$1>$2{print $1}'
  2. yum-3.2.29-43.el6.centos.noarch.rpm
  3. [root@218 test]# echo "yum-3.2.29-43.el6.centos.noarch.rpm yum-3.2.30-43.el6.centos.noarch.rpm"|awk '$1>$2{print $1}'
复制代码





欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2