zypper:如何列出所有活动的软件包存储库?

zypper:如何列出所有活动的软件包存储库?

我怎样才能显示所有活动的软件包存储库zypper

我需要检查脚本的输出。

我知道如何列出它们。但我想避免使用正则表达式解析此输出:

foo-work:~ # LANG=C zypper lr
# | Alias                             | Name                          | Enabled | Refresh
--+-----------------------------------+-----------------------------------+---------+--------
1 | openSUSE 12.3 FOO-BAR           | openSUSE 12.3 FOO-BAR           | Yes     | Yes    
2 | openSUSE 12.3 FOO-BAR Test      | openSUSE 12.3 FOO-BAR Test      | Yes     | No     
3 | openSUSE-12.3 Updates (FOO-BAR) | openSUSE-12.3 Updates (FOO-BAR) | Yes     | Yes    
4 | openSUSE-12.3-Non-Oss (FOO-BAR) | openSUSE-12.3-Non-Oss (FOO-BAR) | Yes     | No     
5 | openSUSE-12.3-Oss (FOO-BAR)     | openSUSE-12.3-Oss (FOO-BAR)     | Yes     | No     

答案1

您是否正在寻找-E, --show-enabled-only仅显示启用的存储库的标志,或者-e ---export -以获取存储库定义格式的列表,以便更容易地进行解析?

zypper lr -E -e - |grep name=

答案2

这将仅打印 SuSE 上启用的存储库:

zypper lr | awk -F'|' '{gsub(/ /, "", $0); if($4=="Yes") print $2}'

gsub 调用仅用于删除前导和尾随的空白。

相关内容