Es gab einige Fälle, in denen ich ein Dienstprogramm / Programm installiert habe und der Name des Befehls vom Namen des Programms abweicht.
Wie ich kürzlich PostgreSQL installiert habe und nach der Installation den Befehl ausgeführt habe
postgresql
aber es gab einen Fehler bash: postgresql command not found
Also suchte ich im Internet und stellte fest, dass der Befehl, postgresql zu feuern, lautete
psql
Wie finde ich heraus, auf welches Dienstprogramm / Programm ich mit welchem Namen zugreifen soll?
Ich habe es getan, apt-cache show postgresql
aber selbst dort wurde nicht erwähnt, dass auf das Programm mit dem Befehl zugegriffen werden würdepsql
Bitte schlagen Sie keinen locate
Befehl vor. Es hilft nicht.
command-line
package-management
GypsyCosmonaut
quelle
quelle
x
und meine ausführbare Datei aufrufey
und es nicht dokumentiere, kann ich nicht sagen, wie meine ausführbare Datei heißt. Dies ist eine schlechte Designentscheidung seitens der Entwickler. Natürlich können Sie das Paket installieren und nachsehen, welche neuen Dateien sich auf der Festplatte befinden. Angesichts der Tatsache, dass einige Pakete Tausende von Dateien installieren, ist dieses Verfahren nicht einfacher, als nur nach seinem Namen zu googeln.Antworten:
Eine Taktik wäre zu untersuchen, welche Dateien das Paket in den verschiedenen bin-Verzeichnissen installiert hat. Bei einer dpkg-basierten Distribution können Sie beispielsweise Folgendes tun:
oder auf einem System mit RPMs können Sie Folgendes tun:
und lesen Sie dann die Handbuchseiten für die Binärdateien, die Sie finden. Eine Herausforderung dieser Taktik besteht darin, dass in einigen Fällen (z. B. postgresql) die Dateien auf einige Pakete verteilt sind.
quelle
postgresql
nur so, dass ichdpkg -L postgresql | grep bin
es getan habe, aber es wurde nichts/usr/bin/psql
apt-cache depends postgresql
zu sehen, wovon dieses Paket abhängt.apt-cache depends postgresql
gibt mirDepends: postgresql-9.6
so habe ichdpkg -L postgresql-9.6 | grep bin
diesmal gemacht und Dateien von/usr/lib/postgresql/9.6/bin
wurden aufgelistet, in denen es keine Erwähnung gab,psql
weil diese Datei existiert, bei/usr/bin/psql
der nicht im Ergebnis aufgeführt warpsql
wird als Teil des Client-Pakets geliefert (wahrscheinlichpostgresql-client-9.6
postgresql-9.6
dlocate
für Debian geschrieben habe (auch weil dpkg -L und dpkg -S langsam waren und immer noch sind). zBdlocate --lsbin postgresql-client-9.6
zeigt Ihnen alle Binärdateien in diesem Paket.dlocate
hat auch--lsman
und--lsconf
und andere Optionen.apropos oder man-k
Dadurch wird eine Suche nach installierten Handbuchseiten durchgeführt, die sich auf Ihr Schlüsselwort beziehen. Ich würde postgres als Schlüsselwort eingeben. Auf meinem System bekomme ich folgendes:
quelle