Shell命令之用脚本判断源码包是否安装
因为Linux安装软件的方式比较多,所以没有一个通用的办法能查到某些软件是否安装了。总结起来就是这样几类: 1、rpm包安装的 可以用 [root@xia ~] rpm -qa | grep ruby
2、以deb包安装的 可以用 [root@xia~]dpkg-l|grepruby
3、yum方法安装的 可以用 [root@xia ~] yum list installed | grep ruby
4、以源码包自己编译安装的 例如 上面两种方法都看不到这种源码形式安装的包。如果是以root用户安装的,可执行程序通常都在 说明:其中 shell脚本怎么判断源码包是否安装#!/bin/bash
read -p "input your rpm_packet'name:" i
x=`rpm -qa | grep $i`
if [ `rpm -qa | grep $i |wc -l` -ne 0 ];then
echo -e "yes,the packet_list: n$x"
else
echo "no"
fi
1、获取shell函数调用的返回值:#!/bin/sh
info()
{
cat jlb.sh
}
res=`info`
echo "state: "$?
echo "res: "${res}
说明: res=`info`
这一行为调用函数info,里面的符号`不是单引号,而是Esc按键下面的那个,另外$?返回的为上一条命令的执行状态,不是返回值; 2、获取shell命令的返回值,原理同上,例如:#!/bin/sh
info=`cat jlb.sh`
echo "info: "${info}
说明:同1 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 推荐13款优秀的Twitter Bootstrap JavaScript插件
- 如何让 Vim 成为我们的神器
- angularjs – 可以在chrome调试器中对所有VM脚本进行黑箱吗
- 单元测试 – 使用TestBed进行Angular2测试获取区域未定义错
- 如何在unite.vim中使用vim中的ack或ag?
- WebService学习整理-JDK的wsimport命令和cxf的wsdl2java命令
- Scala sbt run – “不支持的major.minor版本52.0”
- @ angular / flex-layout不能与@HostBinding一起使用
- WebService(1)——使用JDK开发WebService
- shell脚本基础