
當我運行此命令時:
apt install libkf5*
我收到以下錯誤:
Unable to locate package libkf5*
我確信名稱以 開頭的包libkf5
存在(製表符補全是這樣說的)。所以問題不在於缺少這些軟體
包apt
。
提前致謝。
答案1
最新版本apt
改變了模式的指定方式,並且apt
不再直接支援正規表示式或通配符,除了*
支持2.1.0中恢復和向後移植到 2.0.3。
你現在應該使用
apt install '~nlibkf5.*'
apt 位於 1.9.9 和 2.0.2 之間,或長形式
apt install '?name(libkf5.*)'
可以稍早一些。
看線上說明apt-patterns
頁( man apt-patterns
) 詳細資料。
答案2
人們仍然可以使用 plainapt-get
來達到這個目的。
對於OP的例子,它看起來像
sudo apt-get install "libkf5*"
答案3
根據 apt 的變更日誌,版本2.1.0:
* Reinstate * wildcards (Closes: #953531) (LP: #1872200)
(連結:啟動板#1872200)
所有子命令的星號(並且只有星號)已恢復apt
,包括apt install
.
雖然 2.1.0 太新,無法運送到 Focal,但它已被向後移植到2.0.3可以在focal-proposed
儲存庫中找到。您可以參考Ubuntu 維基用於啟用建議的儲存庫,然後您可以安裝 apt 2.0.3,該版本已向後移植此功能。
你自己看:
筆記: 你可能想讀一下什麼是「建議的」儲存庫?在繼續使用建議的儲存庫之前。
答案4
apt
我發現了一個與通配符一起使用的小技巧。我們只需要apt
使用別名apt-get
,但此方法不起作用,因為別名不會傳遞給sudo
。為了解決這個問題,您可以在文件sudo
中新增第二個別名.bashrc
:
alias sudo='sudo ' # whitespace is important
alias apt='apt-get'
學分: