Problem bei der Verwendung von Platzhaltern mit apt

Problem bei der Verwendung von Platzhaltern mit apt

Wenn ich diesen Befehl ausführe:

apt install libkf5*

Ich erhalte die folgende Fehlermeldung:

Unable to locate package libkf5*


Ich bin sicher, dass die Pakete, deren Namen mit beginnen, libkf5existieren (die Tab-Vervollständigung sagt das). Das Problem liegt also nicht am Fehlen dieser Pakete. (Beachten Sie das Sternchen am Ende dieser Fehlermeldung, das Platzhalterzeichen funktioniert überhaupt nicht.)
Ich verwende aptv.1.9.
Vielen Dank im Voraus.

Antwort1

Aktuelle Versionen vonapt Die Art und Weise, wie Muster angegeben werden, wurde geändert., und aptunterstützt keine regulären Ausdrücke mehr direkt oder Platzhalter, außer *für die die Unterstützung warwiederhergestellt in 2.1.0Undzurückportiert auf 2.0.3.

Sie sollten jetzt verwenden

apt install '~nlibkf5.*'

mit apt zwischen 1.9.9 und 2.0.2, oder die Langform

apt install '?name(libkf5.*)'

etwas früher verfügbar.

Sehendie apt-patternsManpage( man apt-patterns) für Details.

Antwort2

apt-getFür diesen Zweck kann man immer noch Plain verwenden .

Im Beispiel des OP sieht es so aus:

sudo apt-get install "libkf5*"

Antwort3

Gemäß dem Änderungsprotokoll von apt,Version 2.1.0:

* Reinstate * wildcards (Closes: #953531) (LP: #1872200)

(Link: Launchpad#1872200)

Das Sternchen (und nur das Sternchen) wurde für alle aptUnterbefehle wiederhergestellt, einschließlich apt install.

Obwohl 2.1.0 zu neu ist, um an Focal ausgeliefert zu werden, wurde es zurückportiert auf2.0.3die im focal-proposedRepository verfügbar ist. Sie finden weitere Informationen unterdas Ubuntu Wikizum Aktivieren des vorgeschlagenen Repository. Anschließend können Sie Apt 2.0.3 installieren, bei dem diese Funktion zurückportiert wurde.

Überzeugen Sie sich selbst:

Bild

Notiz: Vielleicht möchten Sie lesenWas ist das „vorgeschlagene“ Repository?bevor Sie mit dem vorgeschlagenen Repository fortfahren.

Antwort4

aptIch habe einen kleinen Trick gefunden, den man mit Platzhaltern verwenden kann . Wir müssen nur einen Alias apt​​mit verwenden apt-get, aber diese Methode funktioniert nicht, da Aliase nicht an weitergegeben werden . Um dieses Problem zu umgehen, können Sie einen zweiten Alias ​​für in Ihrer Datei sudohinzufügen :sudo.bashrc

alias sudo='sudo ' # whitespace is important 
alias apt='apt-get'

Credits:

verwandte Informationen