为什么 Ubuntu 手册页存储库中有不同版本的手册页?

Dan*_*Dan 7 manpage

为什么http://manpages.ubuntu.com中有两个或多个不同版本的联机帮助页

例如,查看 的联机帮助页at,您可以找到两个,一个由[ref]manpages-posix包提供。另一个是由包本身提供的[ref]。 这同样适用于其他包以及ls.1ls.1posixls.1plan9at

我从快速搜索中了解到,posix意味着它是 IEEE 指定的标准,用于保持不同操作系统之间的兼容性[ref]

那么Ubuntu有自己的程序实现吗?

Oli*_*Oli 11

POSIX 规定了许多可用的命令(参见 Shell & Utilities 卷)并且它们以某种方式工作。以下是这些命令:

admin alias ar asa at awk basename batch bc bg break c99 cal cat cd cflow chgrp chmod chown cksum cmp colon comm command compress continue cp crontab csplit ctags cut cxref date dd delta df diff dirname dot du echo ed env eval ex exec exit expand export expr false fc fg file find fold fort77 fuser gencat get getconf getopts grep hash head iconv id ipcrm ipcs jobs join kill lex link ln locale localedef logger logname lp ls m4 mailx make man mesg mkdir mkfifo more mv newgrp nice nl nm nohup od paste patch pathchk pax pr printf prs ps pwd qalter qdel qhold qmove qmsg qrerun qrls qselect qsig qstat qsub read readonly renice return rm rmdel rmdir sact sccs sed set sh shift sleep sort split strings strip stty tabs tail talk tee test time times touch tput tr trap true tsort tty type ulimit umask unalias uname uncompress unexpand unget uniq unlink unset uucp uudecode uuencode uustat uux val vi wait wc what who write xargs yacc zcat

GNU coreutils(GNU/Linux 发行版提供的)包含所有这些命令,但随着时间的推移,它们已经脱离了标准的 POSIX 基础。有些提供更好的功能。有些工作方式略有不同。这些 coretils 版本是标准man页面所满足的。

但是仍然需要编写可在许多平台上运行的脚本。例如,如果您尝试grep在 OSX 上使用扩展的 coreutil 功能,则会遇到语法错误。这就是为什么了解 POSIX 版本的工作原理是可取的。安装manpages-posix,你就什么都知道了。

如果您打算改进 GNU coreutils,那么了解这些内容也很重要。

Plan9 又有所不同。它从未被设计为与 POSIX 兼容。它通过仿真层争取一定程度的 POSIX 兼容性,并且它的手册页再次出现,作为文档让您知道您可以使用什么。