在 CentOS 7 中,你可以使用以下命令来检查某个软件包(如 gcc 或 gcc-c++)是否已经安装:
1. 使用 rpm -q 查询是否安装
bash
rpm -q gcc # 检查 gcc 是否安装
rpm -q gcc-c++ # 检查 gcc-c++ 是否安装
输出结果:
- 如果已安装,会显示包名及版本(如
gcc-4.8.5-44.el7.x86_64)。 - 如果未安装,会显示
package gcc is not installed或者未安装软件包 XXX。
2. 使用 yum list installed 列出已安装的包
bash
yum list installed | grep gcc # 检查 gcc 是否安装
yum list installed | grep gcc-c++ # 检查 gcc-c++ 是否安装
输出结果:
- 如果已安装,会显示包名和版本。
- 如果未安装,则无输出。
3. 使用 which 检查命令是否存在
bash
which gcc # 检查 gcc 命令是否存在
which g++ # 检查 g++ 命令是否存在(gcc-c++ 提供)
输出结果:
- 如果已安装,会显示二进制路径(如
/usr/bin/gcc)。 - 如果未安装,则无输出。
4. 直接检查版本(如果已安装)
bash
gcc --version # 检查 gcc 版本
g++ --version # 检查 g++ 版本
输出结果:
- 如果已安装,会显示版本信息(如
gcc (GCC) 4.8.5 20150623...)。 - 如果未安装,会提示
command not found。
5. 使用 repoquery(需先安装 yum-utils)
如果系统安装了 yum-utils,可以用 repoquery 检查:
bash
sudo yum install -y yum-utils # 如果未安装 yum-utils
repoquery --installed gcc # 检查 gcc 是否安装
repoquery --installed gcc-c++ # 检查 gcc-c++ 是否安装
推荐方式
- 快速检查 :用
rpm -q或which。 - 详细检查 :用
yum list installed | grep。 - 验证功能 :用
gcc --version。
完整示例
bash
# 检查 gcc 是否安装
if rpm -q gcc &>/dev/null; then
echo "gcc 已安装,版本:$(gcc --version | head -n1)"
else
echo "gcc 未安装"
fi
# 检查 gcc-c++ 是否安装
if rpm -q gcc-c++ &>/dev/null; then
echo "gcc-c++ 已安装,版本:$(g++ --version | head -n1)"
else
echo "gcc-c++ 未安装"
fi
这样你就可以在运行 yum install 前确认是否需要安装这些包了!