Vor einiger Zeit haben wir gelernt, wie man eine Paketversion in Linux findet . Heute werden wir sehen, wie man herausfindet, ob ein Paket in Linux- und Unix-Betriebssystemen installiert ist oder nicht. Das Auffinden installierter Pakete im GUI-Modus ist einfach. Alles, was wir tun müssen, ist, einfach das Menü oder Dash zu öffnen und den Paketnamen in das Suchfeld einzugeben. Wenn das Paket installiert ist, sehen Sie den Menüeintrag. So einfach ist das. Aber es ist etwas schwierig, es in einem System zu finden, in dem es keinen GUI-Modus hat. Zu wissen, wie man herausfindet, ob ein Paket im CLI-Modus installiert ist oder nicht, ist also genauso wichtig wie im GUI-Modus. Lassen Sie uns nun herausfinden, wie wir herausfinden können, ob ein Paket installiert ist oder nicht, oder?
Finden, ob ein Paket unter Linux installiert ist oder nicht
Der häufigste Weg, um herauszufinden, ob ein Paket installiert ist oder nicht, ist die Verwendung des Befehls „what“ wie unten:
$ which <package-name>
Beispiel:
$ which nano
Wenn das Nano-Paket installiert ist, wird der installierte Pfad wie unten angezeigt.
/usr/bin/nano
Wie Sie sehen, ist das Paket nano in /usr/bin/ installiert Pfad.
Lassen Sie uns ein anderes Paket überprüfen, zum Beispiel Emacs:
$ which emacs /usr/bin/which: no emacs in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
Sehen? Emacs ist nicht installiert.
Finden Sie heraus, ob ein Paket unter Linux installiert ist oder nicht
Der "what"-Befehl ist standardmäßig auf den meisten Unix-ähnlichen Betriebssystemen verfügbar.
Außerdem gibt es ein paar andere distributionsspezifische Möglichkeiten, um herauszufinden, ob ein Paket installiert ist oder nicht. Lesen Sie weiter.
Unter Arch Linux:
In Arch Linux und seinen Derivaten wie Antergos und Manjaro LInux können wir dies mit dem "pacman"-Befehl wie unten tun:
$ pacman -Qs nano
Beispielausgabe:
local/nano 2.9.3-1 (base) Pico editor clone with enhancements
Finden Sie heraus, ob ein Paket in Arch Linux mit Pacman installiert ist oder nicht
Haben Sie das Präfix "local" vor dem Paket "nano" bemerkt? Das bedeutet, dass Nano auf Ihrem System installiert ist.
Wenn der obige Befehl nichts zurückgibt, bedeutet dies, dass das angegebene Paket nicht installiert ist.
Lesen Sie auch - Erste Schritte mit PacmanUnter Fedora / RHEL / CentOS / Scientific Linux:
In RPM-basierten Linux-Distributionen wie Fedora, RHEL und RHEL-Klonen wie CentOS, Scientific Linux können wir mit "rpm" herausfinden, ob ein Paket installiert ist. stark> Befehl wie unten gezeigt.
$ rpm -qa | grep nano
Oder,
$ rpm -qa | grep -i nano
Beispielausgabe:
nano-2.3.1-10.el7.x86_64
Sie können auch Yum verwenden Befehl wie unten.
$ yum list installed|grep 'nano'
Um alle installierten Pakete aufzulisten, führen Sie Folgendes aus:
$ rpm -qa
Als einer unserer Leser "Gregory Pittman" unten im Kommentarbereich erwähnt, können wir dnf verwenden Befehl in Fedora, um das installierte Paket zu finden.
$ dnf list packagename
oder sogar
$ dnf list package*
Was Sie von diesen erhalten, ist eine Liste dessen, was installiert ist und was in Repositories verfügbar ist. dnf lässt einen Platzhalter zu und berücksichtigt bei der Suche auch die Groß- und Kleinschreibung. Manchmal wissen Sie nicht genau, wonach Sie suchen oder die richtige Schreibweise.
Auf Debian / Ubuntu / Linux Mint:
In DEB-basierten Systemen wie Debian, Ubuntu und seinen Derivaten wie Linux Mint und Elementary OS können wir dies mit "dpkg" tun Befehl.
$ dpkg -s nano
Beispielausgabe:
Finden Sie heraus, ob ein Paket in Debian, Ubuntu Linux installiert ist oder nicht. Verwenden Sie den Befehl dpkg
Wie Sie in der obigen Ausgabe sehen, ist das Nano-Paket in unserem Ubuntu-System installiert. Dieser Befehl zeigt nicht nur an, ob das angegebene Paket installiert ist oder nicht, sondern auch die Priorität des Pakets, Versionsnummer, Name des Betreuers, Abhängigkeiten und seine Beschreibung usw.
Dies ist nicht die einzige Möglichkeit, die installierten Pakete zu finden. Hier sind einige weitere Befehle.
$ dpkg-query -l nano
Beispielausgabe:
Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-==============-============-============-================================= ii nano 2.5.3-2 amd64 small, friendly text editor inspired by Pico
Hier ist noch einer.
$ dpkg --get-selections | grep nano
Beispielausgabe:
nano install
Und noch ein Befehl ....
$ dpkg --list | grep nano
Beispielausgabe:
ii nano 2.5.3-2 amd64 small, friendly text editor inspired by Pico
Oder verwenden Sie diesen Befehl:
$ dpkg --list | grep -i nano
Um eine Liste aller installierten Pakete anzuzeigen, führen Sie Folgendes aus:
$ dpkg --list
Auf SUSE/openSUSE:
Um zu überprüfen, ob ein Paket in SUSE und openSUSE installiert ist oder nicht, führen Sie Folgendes aus:
$ zypper search nano
Oder kurz:
$ zypper se nano
Sie können auch den Befehl "rpm" wie unten verwenden.
$ rpm -q nano
Mit dem Dienstprogramm „has“ feststellen, ob ein Paket installiert ist oder nicht
Vertrauen Sie mir, das ist super einfach! Das "hat" Das Hilfsprogramm überprüft das Vorhandensein verschiedener Befehlszeilentools im Pfad und meldet auch deren installierte Version.
Um es zu installieren, führen Sie die folgenden Befehle aus:
$ git clone https://github.com/kdabir/has.git $ cd has $ sudo make install
Überprüfen Sie nun, ob ein Paket verfügbar ist oder nicht, wie unten.
$ has nano ✔ nano 2.5.3
Wenn Sie das Häkchen (✔) sehen, ist das Paket installiert. Wie Sie in der obigen Ausgabe sehen, ist das Nano-Paket installiert und seine Version ist 2.5.3.
Sie sehen das Kreuz, wenn das Paket nicht installiert ist. Überprüfen Sie das folgende Beispiel.
$ has emacs ✘ emacs
Sie können auch nach mehreren Paketen suchen.
$ has nano emacs vim ✔ nano 2.5.3 ✘ emacs ✔ vim 7.4
Wenn Sie es nicht installieren möchten, können Sie es direkt wie unten verwenden. Ihr System muss jedoch mit dem Internet verbunden sein.
$ curl -sL https://git.io/_has | bash -s nano
So suchen Sie nach mehreren Paketen:
$ curl -sL https://git.io/_has | bash -s nano emacs vim
Erstellen Sie einen Alias, wenn Sie zu faul sind, den ganzen Befehl einzugeben:
$ alias has="curl -sL https://git.io/_has | bash -s"
Verwenden Sie jetzt einfach dieses Dienstprogramm wie unten:
$ has nano
Weitere Einzelheiten finden Sie auf der GitHub-Seite des Projekts.
- hat ein GitHub-Repository
Finden Sie, ob ein Paket in Unix installiert ist oder nicht
Die folgenden Schritte wurden in FreeBSD 10.3 getestet. Ich habe nie andere BSD-Betriebssysteme außer FreeBSD ausprobiert. Daher kann es verschiedene Befehle geben, um herauszufinden, ob ein Paket in anderen BSD-Betriebssystemen installiert ist.
In FreeBSD können wir dies mit "pkg" tun Befehl:
$ pkg_info -Ix <package-name>
Beispiel:
$ pkg info -Ix nano
Beispielausgabe:
Finden Sie heraus, ob ein Paket in FreeBSD installiert ist oder nicht. Verwenden Sie den Befehl pkg
Um alle installierten Pakete anzuzeigen, können Sie den folgenden Befehl verwenden:
$ pkg info
Oder,
$ pkg version -v
Dies dauert je nach Anzahl der Pakete in Ihrem FreeBSD-System einige Sekunden bis Minuten.
Schlussfolgerung
Sie wissen jetzt, wie Sie feststellen können, ob ein Paket installiert ist oder nicht, indem Sie den offiziellen und nicht offiziellen Weg von der Befehlszeile aus verwenden. Wie Sie sehen können, ist es nicht so schwierig. Es sind nur ein paar Befehle, die Sie sich leicht merken können. Wenn Sie sich nicht an diese Befehle erinnern können, markieren Sie sie einfach oder im Terminal speichern sich selbst, um bei Bedarf ausgeführt zu werden.