Dnf
DNF。如何找到屬於哪個組包?
我正在使用 Fedora 22 和 dnf-1.1.2-4.fc22.noarch
作為一個案例場景:我發現沒有安裝 strace 包。我想弄清楚這個包是否屬於任何其他組,以安裝我可能也需要用於類似任務的軟體。
我發現了這種蠻力的方式(因為組名以這個縮進開頭,所以 grepping 3 個空格):
dnf grouplist | grep ' ' | while read line; do dnf groupinfo "$line"; done
然後將此輸出重定向到一個文件,搜尋一個包名,並在那裡找到一個組名。
從 Fedora 26 開始,以下工作:
dnf repoquery --groupmember <pkg-name>
請參閱實現此功能的錯誤報告。
這是一個在我的 fedora 21 中似乎可以工作的範例,但 dnf 仍在更改,所以試試看:
$ pkg=fvwm $ dnf groupinfo '*' | sed -n '/Group:/h;/'"$pkg"'/{x;p;x;p}' Group: Window Managers fvwm
保持(h)每個組標題,然後
sed
當包匹配時交換保持和模式(x),列印標題(p),交換回來並列印包。