博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
工作中关于rpm的一个简单但头疼的问题
阅读量:6928 次
发布时间:2019-06-27

本文共 1218 字,大约阅读时间需要 4 分钟。

工作中关于rpm的一个简单但头疼的问题:

公司有个需要自动化更新rpm包的需求,rpm包名是:tingyun-agent-php-1.0.5-1.x86_64,本来是一个很简单的东西,一行代码就可以实现:

for a in `rpm-aq|grep tingyun`;do rpm -e $a;done

但是结果是:

[root@centos scripts]# for a in`rpm -aq|grep tingyun`;do rpm -e $a;done

error: packagetingyun-agent-php-1.0.5-1.x86_64 is not installed

报了个错误,说没有安装此包,但是很明显,查询这个包是存在的:

[root@centos scripts]# rpm-aq|grep tingyun

tingyun-agent-php-1.0.5-1.x86_64

手动执行可以卸载没有问题:

[root@centos scripts]# rpm -etingyun-agent-php-1.0.5-1.x86_64

[root@centos scripts]#

但是这个需要用脚本实现,于是我写在了脚本里,用-x来查看步骤:

[root@centos scripts]# sh -xtest.sh

++ rpm -aq

++ grep tingyun

+ for a in '`rpm -aq|greptingyun`'

+ rpm -e'tingyun-agent-php-1.0.5-1.x86_64'

error:package tingyun-agent-php-1.0.5-1.x86_64 is not installed

然后我把倒数第二行的结果拿出来单独执行,是可以执行成功的:

[root@centos scripts]# rpm -e'tingyun-agent-php-1.0.5-1.x86_64'

[root@centos scripts]#

于是我换一种方法:

[root@centos scripts]# rpm-aq|grep tingyun|xargs rpm -e

error: packagetingyun-agent-php-1.0.5-1.x86_64 is not installed

结果还是一样,多么奇葩的问题,我在其他的虚拟机上用这种方法都正常,但是这台虚拟机却碰到这种头疼的问题,怀疑可能和系统有关,百度和google上都找不到答案。纠结了一整天,没办法只好向老男孩老师请教,老师给出我一个方法如下,

for a in `rpm -aq tingyun-agent-php`;do rpm -e $a;done

直接用rpm –aq  rpm包名,不用grep,  完美解决问题。

非常感谢老男孩老师,解决了我一大头疼的问题。不得不说,姜还是老的辣spacer.gif

 

 

 

 

 

 

 

 

 

 

转载地址:http://uezjl.baihongyu.com/

你可能感兴趣的文章
PCL—综述—三维图像处理
查看>>
linux搭建https服务器(apache)
查看>>
XML 测验
查看>>
HTTP 错误405.0 - Method Not Allowed
查看>>
MIFARE系列7《安全》
查看>>
Qt工程转化为Vs工程
查看>>
剑指offer 例题
查看>>
Caffe学习系列(2):数据层及参数
查看>>
POJ1300(欧拉回路)
查看>>
Windows下cpu使用的监控
查看>>
怎样将baidu地图中的baidu logo 去掉
查看>>
WebService学习总结——调用第三方提供的webService服务
查看>>
设置vs2008代码区的背景色
查看>>
ServerSocket 默认邦定IP
查看>>
谈谈前端『新』技术
查看>>
(白书训练计划)UVa 120 Stacks of Flapjacks(构造法)
查看>>
删除反复字符
查看>>
解决Win10服务主机本地系统网络受限
查看>>
【POJ 3176】Cow Bowling(DP)
查看>>
SQL 存储过程入门(事务)(四)
查看>>