特定のパッケージに依存する他のパッケージを見つける方法は?

特定のパッケージに依存する他のパッケージを見つける方法は?

私はLinuxに初めて触れました。マンジャロを使っています。

私は実行し、pacman -Qe | lessパッケージのリストで以下を見つけました:

jdk8-openjdk 8.u282-1
jfsutils 1.1.15-7
jre8-openjdk 8.u282-1
jre8-openjdk-headless 8.u282-1

上記のパッケージに依存するパッケージを確認する方法はありますか?

私は基本的になぜそれを持っているのかを理解しようとしていますがjdk8-openjdk 8.u282-1jre8-openjdk 8.u282-1何も使用しない場合は削除したいと思います。

しかし、他のものがそれを使用しているかどうかはどうすればわかりますか?

ベストアンサー1

pacman -Qi jdk8-openjdk jfsutils jre8-openjdk jre8-openjdk-headless

そのパッケージに依存するパッケージ(「必須」)およびオプションで必要なパッケージ(「オプション」)のリストなど、そのパッケージに関する情報が表示されます。

出力にフィルタを適用し、関連情報のみを選択できます。

pacman -Qi jdk8-openjdk jfsutils jre8-openjdk jre8-openjdk-headless |
  awk '/(^Name)|(^Required By)|(^Optional For)/'

pacinfoこのパッケージを使用すると、同様の結果が得られます(1行に1つの依存関係)pacutils。この場合、local各パッケージ名にプレフィックスを追加して結果をインストールされたパッケージに制限します。

pacinfo local/jdk8-openjdk local/jfsutils ...

依存関係ツリービューアはArch Linuxパッケージpactreeにも提供されています。pacman-contrib万座でユーザーではないので確認できませんが、関連内容を確認してみてくださいGitLabページpacmanManjaroのパッケージにもArchコンテンツが含まれているようですpacman-contrib
これを使用して、次に依存するパッケージを一覧表示できますjdk8-openjdk

pactree -r jdk8-openjdk

また、オプションの依存関係も含まれます。

pactree -ro jdk8-openjdk

おすすめ記事