Як встановити MANPATH без перевищення за замовчуванням?


14

Я додав додаткові каталоги $PATH, експортуючи, PATH=/my/dirs:$PATH але я не впевнений, чи варто мені це робити MANPATH. Тому що за замовчуванням MANPATHпорожнє, але manкоманда працює. Я знайшов команду, яка називається, manpathі в її посібнику написано If $MANPATH is set, manpath will simply display its contents and issue a warning.. Чи означає це, що встановлення MANPATH не є правильним способом додавання каталогів для manкоманди для пошуку сторінок вручну?

Відповіді:


20

Якщо ви просто встановите MANPATH, це скасовує стандартні параметри, і ви втрачаєте доступ до стандартних сторінок. Наприклад, man lsпрацює перед встановленням MANPATH, але після цього не працює.

Щоб додати каталог пошуку, не змінюючи за замовчуванням, приставте двокрапку до MANPATH так:

export MANPATH=":/path/to/custom/man"

Додавання двокрапки забезпечує доступ як до стандартних сторінок системної сторінки, так і до користувацьких сторінок, на які посилається змінна MANPATH.

Цю відповідь вам приніс manpath (1) :

Якщо встановлено $ MANPATH, manpath відображає його значення, а не визначає його на льоту. Якщо $ MANPATH має префікс двокрапкою, то значення змінної додається до списку, визначеного зі вмісту файлів конфігурації. Якщо двокрапка надходить у кінці значення змінної, то визначений список додається до вмісту змінної. Якщо значення змінної містить подвійну двокрапку (: :), то визначений список вставляється в середину значення, між двома двокрапками.


1

IMO, ви повинні додати свої власні каталоги в кінці вашого PATH

PATH=$PATH:/my/dirs

Це робиться так, що ваші користувацькі каталоги не перетинають системні бінарні файли / версії, і це незначна проблема безпеки.

ви встановлюєте MANPATH так само (MANPATH за замовчуванням порожній).

MANPATH=$MANTPATH:/my/dirs

Вам не потрібно встановлювати MANPATH з добре поведеними пакетами, тому, якщо він не порушений, не виправляйте його, і якщо він порушений, можливо, вам краще подати звіт про помилку;)

Додайте це до ~ / .bashrc

export PATH=$PATH:/my/dirs
export MANPATH=$MANPATH:/my/dirs

Друкарська помилка у другій заяві? MANPATH=$MANTPATH:/my/dirs Можливо, має бути:MANPATH=$MANPATH:/my/dirs
kevinarpe

Що ви маєте на увазі під "добре поведеними пакетами"? У мене є цілий набір інструментів, які не встановлені у звичайних місцях (кластери HPC часто ставлять речі в / opt). Як вони повинні реєструвати свої чоловічі сторінки, не використовуючи $ MANPATH?
i_grok

"добре поводиться пакети" написані для використання стандартних шляхів та змінних довкілля. Пакети з поганою поведінкою використовують нестандартні, принаймні, до Ubuntu, такі шляхи, як / opt або не використовують змінні середовища, і таким чином призводять до вашого спостереження "У мене є цілий набір інструментів, які не встановлені у звичайних місцях (кластери HPC часто ставлять речі в / opt) "
Пантера
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.