Was bedeutet das Caret (^) in apt-get?

33

Es werden verschiedene Anweisungen angezeigt, in denen Sie aufgefordert werden, Folgendes zu installieren:

apt-get install lamp-server^

Mit dem Oddball Caret im Kommando. Es scheint nicht im apt-getHandbuch erwähnt zu werden . Was ist das Problem ?

mlissner
quelle
Siehe auch
Xtreme Biker stellt Monica am

Antworten:

21

Der ^Charakter ist kein Tippfehler. Wenn Sie es entfernen, apt-getwird sich beschweren, dass das Paket nicht gefunden werden kann.

Dieser Artikel und seine Kommentare beschreiben, was das Caret tut:

Nun, die Antwort ist, dass das Caret-Symbol eine Kurzform für die Ausführung einer Aufgabe ist, die sonst das Programm "tasksel" mit dem angegebenen Paketnamen ausgeführt hätte. tasksel ist ein Programm zur Vereinfachung der Installation häufig verwendeter Komponenten, die für eine bestimmte Verwendung zusammen passen.

Lekensteyn
quelle
1
Lerne jeden Tag etwas Neues.
Coteyr
2
Dieses Detail, das seit 3 ​​Jahren auf der Manpage fehlt, ist eine schreckliche Sache.
Jay _silly_evarlast_ Wren
Ich habe tasksel nicht in meinem System installiert, aber es funktioniert.
Hardik Gajjar
@HardikGajjar Der Grund ist, dass dies taskselnur ein sehr nützlicher Befehl für die Arbeit mit "Aufgaben" ist. Sie können Aufgaben ohne installieren tasksel. Aber ( wie hier erklärt ) ist besser taskselals mit der Apt / Caret-Methode. Es scheint apt-cacheauch keine Möglichkeit zu bieten, Aufgaben als aufzulisten tasksel --list-task.
Pablo A
11

Mit dem Symbol ^ können Sie "Tasks", eine Reihe von Paketen, installieren. Dies kann ein taskselspezielles Werkzeug für die Arbeit mit Aufgaben ersetzen .

Indem ich es tue

apt-get install lamp-server^

Sie führen gerade die Installation einer Reihe von Paketen aus, die über den Befehl installiert worden wären (auch wenn dies nicht genau dasselbe ist ):

tasksel lamp-server

Mit anderen Worten : Aufgaben sind Metapaketen sehr ähnlich und leben unabhängig von tasksel. Sie können Aufgaben installieren, ohne das taskselPaket zu installieren .

coteyr
quelle
Das ist nicht richtig. Der apt-getBefehl würde bei nicht erkannten Namen fehlschlagen.
Lekensteyn
Ich stehe korrigiert da, es scheint, dass es in apt-get verwendet wurde, um tasksel zu ersetzen, wie Sie erwähnt haben. Ich werde meine Antwort aktualisieren.
Coteyr
1
Ja, aber das funktioniert auch ohne taskselinstallierten Befehl. Und ich habe das /usr/share/tasksel/Verzeichnis nicht, daher kann ich nicht sehen, welche anderen coolen "Aufgaben" verfügbar sind. Es ist nur lamp-server^überall. Wo kommt apt-getes her?
Tomasz Gandor