我想使用脚本 shell 安装一系列包。
问题是 : 包不可用怎么办?
脚本思路是:
如果安装了软件包,请转到下一个
如果可以安装该软件包,请安装它,
如果包不可用,请退出脚本,或提醒我有关该包的信息。按一个键继续左右。
谢谢!
更多信息:
前段时间和尚发了这句话
yum list installed vnc-server >/dev/null && echo "vnc-server installed."|| yum -y 安装 vnc 服务器
** 它将返回已安装的 vnc-server 或将安装它。**
我尝试安装 mariadb,但是 - mariadb 在 Centos 6.6 中不可用我应该安装其他存储库或我还不知道的东西,关键是脚本的行为。
pkg=mariadb || yum list installed $pkg >/dev/null && echo "--> $pkg installed."||百胜安装 $pkg
这一行将返回 - -> mariadb 已安装。
(这个返回是错误的,因为 MariaDB 不可用)
在命令行输入
百胜安装 mariadb
它会回来
加载的插件:fastestmirror
设置安装过程
从缓存的主机文件加载镜像速度
基地:mirrors.tripadvisor.com
Actor :mirrors.seas.harvard.edu
更新:mirrors.lga7.us.voxel.net
没有可用的包 mariadb。
错误:无事可做
谢谢!
最佳答案
也许你想检查 yum 的退出代码(未经测试的 Bash 代码):
百胜列表 $pkg >/dev/null
如果 [ $? -eq 0]
然后
echo "安装 $pkg"
百胜 -y 安装 $pkg
别的
echo "$pkg 未找到或未知错误。"
菲
关于Shell Script 和 yum,包不可用时怎么办。森托斯,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29368607/