繁体   English   中英

如何获取centos7 repo文件中变量的值?

[英]How to get the value of variables in centos7 repo file?

cat /etc/yum.repos.d/CentOS-Base.repo

显示了以下几行,它是一个shell脚本。

[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

在终端输入echo $releasever ,屏幕无输出。

如何获取$ releasever,$ arch,$ basearch的值?

您可以使用以下命令:

python -c 'import yum, pprint; yb = yum.YumBase(); pprint.pprint(yb.conf.yumvar, width=1)'

这些不是shell变量,因此您不希望能够以bash打印它们。 这些是yum提供的值。 此答案讨论了如何以编程方式获取它们,但总的来说:

  • releasever是CentOS版本的主要版本; 基本上, rpm -q --qf='%{VERSION}\\n' centos-release
  • basearch是您的系统架构,您可以使用uname -m找到它
  • 没有arch变量
  • 根据这篇文章 ,基础infra显然是新事物,可能无法使用

有一些文件在这里 ,它同时老十岁上下仍然是准确的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM