Filesystems

人目錄佈局——為什麼是子目錄?

  • May 9, 2016

Man 期望 man 目錄中列出$MANPATH$(manpath)按部分拆分為名為 的目錄"man$section"。這複製了聯機幫助頁後綴中已經提供的部分資訊。(例如,對於ls.1.gz.1資訊在 中重複man1/)。為什麼不跳過中間的 man-directories 並使manpath目錄平坦,因為 flat 對於目錄來說似乎足夠好$PATH

它不會重複資訊:在給定目錄中,您可以有比普通的“.1”或“.3”更多的後綴,例如(取決於平台)數字後面的字母。例如,Debian 在“.3”後面加上一個應用程序後綴,例如 Perl 模組的“pm”。

以下是清單的(部分)/usr/share/man/man1,用於說明:

-rw-r--r--   1 root          592 Apr 17 2012    411toppm.1.gz
-rw-r--r--   1 root         3827 Tue 15:21:13   CA.pl.1ssl.gz
lrwxrwxrwx   1 root           17 Feb 19 2012    GET.1p.gz -> lwp-request.1p.gz
lrwxrwxrwx   1 root           17 Feb 19 2012    HEAD.1p.gz -> lwp-request.1p.gz
lrwxrwxrwx   1 root           17 Feb 19 2012    POST.1p.gz -> lwp-request.1p.gz
-rw-r--r--   1 root         2490 Aug 29 2011    SOAPsh.1p.gz
-rw-r--r--   1 root         2428 Aug 29 2011    XMLRPCsh.1p.gz
-rw-r--r--   1 root         5112 Apr  5 2012    alien.1p.gz 
-rw-r--r--   1 root         3130 Oct 26 2012    apt-show-versions.1p.gz
-rw-r--r--   1 root         4011 Tue 15:21:13   asn1parse.1ssl.gz
-rw-r--r--   1 root         2847 Tue 15:21:13   c_rehash.1ssl.gz
-rw-r--r--   1 root         9796 Tue 15:21:13   ca.1ssl.gz
-rw-r--r--   1 root         6410 Tue 15:21:13   ciphers.1ssl.gz
-rw-r--r--   1 root         8419 Tue 15:21:13   cms.1ssl.gz
-rw-r--r--   1 root         6394 Jun 26 2012    cpanm.1p.gz
-rw-r--r--   1 root         2631 Tue 15:21:13   crl.1ssl.gz
-rw-r--r--   1 root         2636 Tue 15:21:13   crl2pkcs7.1ssl.gz
-rw-r--r--   1 root         2272 Jun 19 2014    dbilogstrip.1p.gz
-rw-r--r--   1 root         3255 Jun 19 2014    dbiprof.1p.gz

此外,各種目錄是分開的,因為在使用cat目錄的系統中,文件名(通常)會重複。

最後 - 有一個拆分來保持目錄大小(相對)小並提高性能。

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