RPM 返回错误打印的操作系统包路径

RPM 返回错误打印的操作系统包路径

我正在尝试找到路径的相关操作系统包。我用rpm这个。例如:

> /bin/rpm -qf --queryformat '[%{NAME}]' /usr/bin/tcsh
tcsh

但我注意到有些包装印刷得很糟糕:

/bin/rpm -qf --queryformat '[%{NAME}]' /usr/bin/wget
wgetwget-openssl1

没有这样的操作系统包wgetwget-openssl1。但是还有wget-openssl1。我究竟做错了什么?为什么会这样打印呢?

另一个打印不良的例子:

/bin/rpm -qf --queryformat "[%{NAME}]" /usr/bin/curl
curlcurl-openssl1

应该:curel-openssl1

我注意到它只发生在(.*)-openssl1像这样的包中:

> /bin/rpm -qf --queryformat "[%{NAME}]" /usr/bin/mailx
mailxmailx-openssl1

由于我在自动化脚本中使用此命令想要查找相关的操作系统包,我怎样才能使其工作?还有其他--queryformat我可以使用的吗?

答案1

您的命令是查找多个结果,但不将它们分开。添加\n到格式字符串:

$ rpm -qf --queryformat "[%{NAME}]\n" /usr/bin/mailx
mailx
mailx-openssl1

相关内容