Як мені вручну встановити файл чоловічої сторінки?


44

Як встановити файлову систему файлових сторінок?

Наприклад, якщо у мене є файл чоловічої сторінки examplecommand.1, як його встановити, щоб я міг просто набрати його man examplecommandдля перегляду?

Відповіді:


53
  1. По-перше, з’ясуйте, до якого розділу належить ваша чоловіча сторінка. Якщо це команда, вона, ймовірно, належить до розділу 1. Ви можете прочитати командну сторінку для manкоманди,Піктограма manpage щоб побачити опис різних розділів та їх відповідних номерів.

  2. Скопіюйте свою сторінку чоловіка /usr/local/share/man/man1/( 1якщо потрібно, змініть номер свого розділу). Ви також можете встановити його /usr/share/man/man1/, але найкраще використовувати localкаталог для файлів, які встановлені без використання менеджера пакетів APT:

    sudo cp examplecommand.1 /usr/local/share/man/man1/
    
  3. Виконайте mandbкоманду. Це оновить manвнутрішню базу даних:

    sudo mandb
    
  4. Це воно! Ви повинні мати можливість переглядати сторінку чоловіка, запустивши:

    man 1 examplecommand
    

Список літератури:

  • Сторінка для manкомандиПіктограма manpage
  • Сторінка для mandbкомандиПіктограма manpage
  • Вихідний код, /usr/bin/dh_installmanякщо ви можете прочитати Perl, встановлений разом з debhelperпакетом.

1
Чи є варіант або яка рекомендована практика, коли ви хочете уникати використання sudo?
Хорхе Букаран

@JorgeBucaran Дивіться нижченаведену відповідь про те, як встановити MANPATH, що дозволяє розміщувати сторінки вручну в просторах, до яких ви можете написати, наприклад, $ HOME / lib / share / man або десь так
nealmcb

Я думаю, ви можете зберегти підручні сторінки /usr/local/man, а також запропоновані в картографії PATH to MANPATH /etc/manpath.config.
jarno

10

Якщо вам потрібно лише локально встановити сторінку man :

Якщо MANPATHце не встановлено, або включає порожній компонент (тобто починається з :, закінчується :або містить ::), то <path>/share/manавтоматично буде шукати підручні сторінки, коли вони <path>/binє частиною PATH, для всіх значень<path> .

Це забезпечує дуже простий спосіб додати довідкові сторінки для локально встановленого програмного забезпечення. Є деякі деталі man manpathі /etc/manpath.config, але я не бачу якихось - яких згадок про родове відображення з <path>/binв <path>/share/man.


Я додав MANPATH=<local path to the man pages>:$MANPATHдо ваших ${HOME}/.bashrc(сеансів без входу) або ${HOME}/.profile(сеансів входу). У моєму випадку я створив локальний каталог для man pages у ${HOME}/share/man/, який імітує класичну файлову систему Linux. Я створив ${HOME}/share/man/man.1, який потім містить символічне посилання на розташування до файлу, examplecommand.1куди не встановив інсталятор програми (налаштування "префікс"). Запуск man examplecommandзнаходить сторінки чоловіка в точку. Таким чином, установка є локальною, проте не загальносистемною.
XavierStuvw

Це був дуже цікавий коментар, і він забезпечує шлях для людей, які потребують лише встановити свій ПАТ (який вони вже очікують) для місцевих бінарних файлів. Однак я не думаю, що загальне відображення <path>/bin-> <path>/share/manіснує. Під час виконання штриха (1) на manз MANPATH=:/nonexistingdir, я бачу наступне: - <path>/bin-> <path>/man Це в системі Debain Buster.
Актау

1

Відповідь @ ntc2 вище - це той, кого слід дивитись. Я хотів додати кілька додаткових коментарів, які не вміщувались у розділі коментарів:

Підхід @ ntc2 забезпечує шлях лише для людей, які потребують встановити свій PATH (який вони вже очікують) для місцевих бінарних файлів.

Однак я не думаю, що загальне відображення <path>/bin-> <path>/share/manіснує для всіх шляхів у $PATH. Схоже, цього специфічного відображення уникнути, коли $PATHйдеться про питання $HOME/bin. Під час виконання штриха (1) на manз MANPATH=:/nonexistingdir, я бачу такі підходи:

Для будь-якого елемента в $PATHцьому немає$HOME/bin

  • <path>/bin -> <path>/man
  • <path>/bin -> <path>/bin/man
  • <path>/bin -> <path>/share/man
  • <path>/bin -> <path>/bin/share/man

Для $HOME/bin

  • $HOME/bin -> $HOME/man

Я поняття не маю, чому це пропускає інші. Це в системі Debian Buster. В інших системах це може відрізнятися.

Для мене це означає, що найбезпечнішим способом встановлення man-сторінок є <path>/man, оскільки він гарантовано знайдеться, якщо він знаходиться в $PATH.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.