我正在尝试找到路径的相关操作系统包。我用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