Wie installiere ich alle Pakete, die Aptitude gefunden hat?
Zum Beispiel:
sudo aptitude search eclipse
... habe ungefähr 66 Pakete gefunden. Wie kann ich alle gefundenen Pakete installieren, ohne sie einzeln zu schreiben?
Antwort1
Sie können das Symbol als Platzhalter verwenden *
. Ich weiß, dass es beim Löschen von Dateien funktioniert, die zwar alle den gleichen Titel haben, aber unterschiedliche Daten an den Dateinamen angehängt haben.
In Ihrem Fall würden Sie Folgendes eingeben:
sudo apt-get install eclipse*
Dadurch werden alle Pakete installiert, die mit der Zeichenfolge beginneneclipse
gegen:
sudo apt-get install eclipse
Dadurch werden nur Pakete mit dem Namen „Eclipse“ installiert.
Antwort2
Ich würde so etwas machen:
sudo apt-get -d -u install $(apt-cache search -n eclipse | cut -f1 -d' ' | grep -vE 'redeclipse|^lib')
Beachten Sie das -d
for --download-only
. Wenn Sie sichergestellt haben, dass nur das installiert wird, was Sie wollen/brauchen, entfernen Sie das -d
aus dem apt-get
Befehl.
apt-cache search -n
Die Ausgabe von ist weitaus weniger „rauschbehaftet“ als aptitude search
die von und lässt sich daher in einer Pipeline einfacher verarbeiten.
redeclipse
ist ein Spiel und kein Teil von Eclipse. Und Sie möchten, dass Bibliotheken als Abhängigkeit einbezogen werden, damit sie als automatisch installiert markiert werden. Sie können dem grep -vE
Argument alle anderen Pakete hinzufügen, die Sie nicht installieren möchten.