命令的 e 和 f 版本

命令的 e 和 f 版本

我注意到有些命令也有 e 和 f 版本,例如 grep、egrep、fgrep 和其他一些命令。

如果特定命令应该有 e 或 f 版本,是否有某种模式或命名约定?

答案1

例如,有一个关于这一点的线索man grep,它也是man fgrep-man egrep通常,像这样具有微小变化的工具将为所有变化提供一个手册页,解释它们之间的关系:

此外,还有两个变体程序egrep 和fgrep 可用。 egrep是相同的grep -Efgrep是相同的grep -F不推荐直接调用 egrep 或 fgrep,但提供它是为了允许依赖它们的历史应用程序不加修改地运行。

据推测, fgrep 和 egrep 曾经是标准化名称,但如果您进一步查看手册页,请注意-E-F是“由 POSIX 指定”,这意味着此标准化改变了策略,但是(如上所述),向后兼容性被维持。

关于程序是否“应该”有变体的话题 - 不,没有标准。但由于链接的轻量级性质,有很多程序可以这样做(请参阅ln- 忽略符号链接)。

相关内容