Man

我應該在使用者目錄的哪里安裝手冊頁?

  • October 11, 2018

我正在嘗試為我編寫的一個小型 Perl 實用程序創建一個 Makefile,並且我正在努力尋找一種方法來找到以非 root使用者make身份執行我的手冊頁的位置。

我目前正在解析輸出manpath以找出$HOME目錄中的第一個路徑……它幾乎可以正常工作。

我找到的路徑是~/man~/share/man

唯一的問題是,如果這些目錄一開始不存在,manpath則不會輸出它們中的任何一個。

問題

  • 有沒有一種可移植的方法來找出我應該在使用者的 $HOME 目錄中安裝手冊頁的位置?
  • 如果不是,應該首選哪一個?

您可以將手冊頁放在此目錄中:

$HOME/.local/share/man

直接訪問

然後您可以使用以下命令直接訪問它們man

man $HOME/.local/share/man/manX/manpage.1.gz

$MANPATH

您可以$MANPATH使用命令檢查它是什麼manpath,或回顯環境變數$MANPATH

例子

$ manpath
manpath: warning: $MANPATH set, ignoring /etc/man_db.conf
/home/saml/apps/perl5/perlbrew/perls/perl-5.14.0/man:/home/saml/.rvm/rubies/ruby-1.9.2-p180/share/man:/home/saml/.rvm/man:/usr/local/share/man:/usr/share/man:/usr/brlcad/share/man:/usr/man:/usr/brlcad/share/man:/usr/brlcad/share/man

$ echo $MANPATH
/home/saml/apps/perl5/perlbrew/perls/perl-5.14.0/man:/home/saml/.rvm/rubies/ruby-1.9.2-p180/share/man:/home/saml/.rvm/man:/usr/local/share/man:/usr/share/man:/usr/brlcad/share/man:/usr/man:/usr/brlcad/share/man:/usr/brlcad/share/man

您可以暫時將內容添加到 MANPATH:

MANPATH=$HOME/.local/share/man:$MANPATH

如果你想讓它永久化,那麼在你的/etc/profile.d/目錄中添加一個文件,myman.bash其中包含上面的MANPATH=行。這將在系統範圍內為每個人提供。如果您希望它只適合您,請將其添加到您的$HOME/.bash_profileor$HOME/.bashrc中。

引用自:https://unix.stackexchange.com/questions/90759