带有 aptitude 的正则表达式第 2 部分

带有 aptitude 的正则表达式第 2 部分

我问过关于 aptitude 的正则表达式这里效果非常好。现在 i386 软件包也在其中。我如何确保 i386 软件包不会出现在图中。我尝试了以下方法 -

alias aptn="aptitude search '~N !-dbgsym$ ' '!-i386$'"

alias aptn="aptitude search '~N !-dbgsym$ ' '~N !-i386$'"

现在使用任一别名购买,我会看到新的 dbgsym 和 i386 软件包。我不想看到他们。有出路吗 ?

─[$] aptn

p   sed-dbgsym      - Debug symbols for sed
p   sed-dbgsym:i386 - Debug symbols for sed

答案1

您忘记了上一个问题的答案中最重要的部分:

将两种模式组合在一个命令行参数中

你需要跑

aptitude search '~N !-dbgsym$ !~ri386'

通过像您所做的那样添加模式,您将搜索满足您给出的两种模式之一的包。在第一种情况下,这是新的软件包不调试符号,或者不用于i386;在第二种情况下,这是新的软件包不调试符号,或新的不是为了i386。您还需要使用~r搜索词来过滤架构,它们不是包名称的一部分。

该搜索的更一般形式是

aptitude search '~N !-dbgsym$ !~rforeign'

其中不包括所有外部架构包。

相关内容