Antworten:
Finden Sie zunächst heraus, zu welchem Abschnitt Ihre Manpage gehört. Wenn es ein Befehl ist, gehört er wahrscheinlich zu Abschnitt 1. Sie können die Manpage für den manBefehl
lesen , um eine Beschreibung der verschiedenen Abschnitte und ihrer entsprechenden Nummern zu erhalten.
Kopieren Sie Ihre Manpage nach /usr/local/share/man/man1/(ändern 1Sie gegebenenfalls Ihre Abschnittsnummer). Sie können es auch installieren, es /usr/share/man/man1/wird jedoch empfohlen, das localVerzeichnis für Dateien zu verwenden, die ohne den APT-Paketmanager installiert werden:
sudo cp examplecommand.1 /usr/local/share/man/man1/
Führen Sie den mandbBefehl aus. Dadurch wird mandie interne Datenbank des Updates aktualisiert :
sudo mandb
Das ist es! Sie sollten in der Lage sein, die Manpage anzuzeigen, indem Sie Folgendes ausführen:
man 1 examplecommand
manBefehl
mandbBefehl
/usr/bin/dh_installmanwenn Sie Perl lesen können, wird mit dem debhelperPaket installiert ./usr/local/manPATH to MANPATH Mapping speichern /etc/manpath.config.
Wenn Sie die Manpage nur lokal installieren müssen :
Wenn MANPATHes nicht gesetzt ist oder eine leere Komponente enthält (dh beginnt mit :, endet mit :oder enthält ::), <path>/share/manwird automatisch nach Manpages gesucht, wann immer <path>/binein Teil von PATH, nach allen Werten von<path> .
Dies bietet eine sehr einfache Möglichkeit, Manpages für lokal installierte Software hinzuzufügen. Es gibt einige Details in man manpathund /etc/manpath.config, aber ich sehe keine Erwähnung der generischen Zuordnung von <path>/binbis <path>/share/man.
MANPATH=<local path to the man pages>:$MANPATHIhre ${HOME}/.bashrc(Nicht-Anmeldesitzungen) oder ${HOME}/.profile(Anmeldesitzungen) angehängt . In meinem Fall habe ich ein lokales Verzeichnis für ${HOME}/share/man/Manualpages eingerichtet, das das klassische Linux-Dateisystem nachahmt. Ich habe erstellt ${HOME}/share/man/man.1, der dann einen symbolischen Link zum Speicherort der Datei enthält, examplecommand.1wo auch immer das Programm-Installationsprogramm sie abgelegt hat (das configure-Präfix). Beim Starten werden man examplecommanddie Manpages in Punkt gefunden. Auf diese Weise erfolgt die Installation lokal, jedoch nicht systemweit.
<path>/bin-> <path>/share/manexistiert. Wenn ich Strace (1) manmit durchführe MANPATH=:/nonexistingdir, sehe ich Folgendes: - <path>/bin-> <path>/man Dies ist auf einem Debain Buster-System.
Die Antwort von @ ntc2 oben ist die, die man sich ansehen sollte. Ich wollte einige zusätzliche Kommentare hinzufügen, die nicht in den Kommentarbereich passen:
Der Ansatz von @ ntc2 bietet einen Pfad für Benutzer, die nur ihren PATH (den sie bereits erwarten) für lokale Binärdateien festlegen müssen.
Ich glaube jedoch nicht, dass das generische Mapping <path>/bin-> <path>/share/manfür alle Pfade in existiert $PATH. Es scheint, als würde diese spezifische Zuordnung vermieden, wenn dies der $PATHFall ist $HOME/bin. Wenn strace (1) auf die Durchführung manmit MANPATH=:/nonexistingdir, ich folgende Lookups sehen:
Für jedes Element ist $PATHdas nicht$HOME/bin
<path>/bin -> <path>/man<path>/bin -> <path>/bin/man<path>/bin -> <path>/share/man<path>/bin -> <path>/bin/share/manZum $HOME/bin
$HOME/bin -> $HOME/manIch habe keine Ahnung, warum es die anderen überspringt. Dies ist auf einem Debian Buster-System. Bei anderen Systemen kann dies anders sein.
Für mich bedeutet dies, dass der sicherste Pfad für die Installation von man-pages ist <path>/man, da er garantiert in der gefunden wird $PATH.
sudo?