特定のrpmパッケージに含まれるすべてのコマンドを一覧表示するには?

特定のrpmパッケージに含まれるすべてのコマンドを一覧表示するには?

この正確な質問を見つけました。Debian の場合ここで:特定のDebianパッケージのすべてのコマンドを一覧表示

しかし、RHEL / CentOS(またはOpenSUSE)に対してそのような要求をした人はいないようです。

たとえば、パッケージから何が出てくるのかをrpm -qf $(which dig)調べるために実行できます。そのパッケージのデータをすばやく表示するために実行できますが、パッケージに含まれる他のコマンドはどのように表示されますか?digbind-utilsyum -C info bind-utilsbind-utils

理想的には、ソリューションは私の変数とは無関係でなければなりません。$PATHこれは、パスが破損しているか、システムではなくユーザーパス(含まれていないなど)であっても、特定の/sbinパッケージからどのコマンドがインストールされているかを知りたいと思うかもしれません。

答え1

rpm -ql bind-utilsハ、Jeff Schallerがコメントで指摘したように見つけました。

リストから実行できないファイルをフィルタリングするもう少しスタイリッシュなバージョンは次のとおりです。

for file in $(rpm -ql packagename) ; do test -x $file && test -f $file && echo $file ; done

答え2

パッケージのコマンドを一覧表示するには、次のライナーコマンドのいずれかを使用します。

 rpm -ql systemd | grep -w 'bin\|sbin' | awk -F '/' '{print $NF}' | xargs man head | grep ' - ' | grep -vi 'No manual' 2> /dev/null 

関連情報