我正在嘗試找到路徑的相關作業系統包。我用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