“egrep”是 POSIX 标准的一部分

roa*_*ima 3 grep posix

egrep命令已被弃用,取而代之的是grep -E.

POSIX 定义grep包括以下注释:

grep已经以向上兼容的方式得到增强,以提供历史egrepfgrep命令的确切功能。标准开发人员的明确意图是将这三个grep命令合并为一个命令。

egrep命令fgrep可能会在未来许多年作为实现扩展得到支持,从而允许历史应用程序无需修改即可运行。

然而,它本身没有 POSIX 命令定义条目egrep

本节是否确认这egrep是一个公认的 POSIX 命令(即使已被弃用),还是仅仅指出该命令曾经存在并且在可预见的将来应该(而不是必须)受支持?

换句话说,egrepPOSIX 的情况如何?

Ste*_*itt 7

POSIX 基本原理部分中的 \xe2\x80\x9cUtilitiesRemoved in the Previous Version\xe2\x80\x9d 部分表示

\n
\n

在此标准的先前版本中删除了以下实用程序:

\n

[\xe2\x80\xa6]egrep fgrep

\n
\n

这意味着它egrep不再是 POSIX 的一部分(包括扩展)。后果至少是这样的

\n
    \n
  • egrep未经认证的系统;
  • \n
  • 严格遵守 POSIX 标准的实用程序不得期望egrep可用。
  • \n
\n

POSIX 系统不应该包含任何类型的期望egrep,只是声明由于历史原因可能egrep存在。

\n

我不知道认证测试套件是否包含任何一致性测试(egrep当它存在时) 。换句话说,我不知道包含 xe2x80x99tegrep等效命令的系统是否grep -E会失败一致性测试。(我想它不会\xe2\x80\x99t,因为egrepPOSIX指定了\xe2\x80\x99t。)

\n