Na seção de execute_cmd.c
de bash-4.2+dfsg
que lida com TIMEFORMAT
:
if (*s == 'R' || *s == 'E')
len = mkfmt (ts, prec, lng, rs, rsf);
else if (*s == 'U')
len = mkfmt (ts, prec, lng, us, usf);
else if (*s == 'S')
len = mkfmt (ts, prec, lng, ss, ssf);
else
{
internal_error (_("TIMEFORMAT: '%c': invalid format character"), *s);
free (str);
return;
}
Assim, acima, parece que %E
significa o mesmo que %R
: tempo decorrido (real).
Eu vi algo similar no GNU sed
. A opção -r
está documentada como habilitando as expressões regulares estendidas do sed. Um recurso não documentado é que -E
faz a mesma coisa. Nesse caso, o objetivo é claro: isso fornece compatibilidade com o sinalizador que o BSD sed
usa para regex estendido. Uma possível razão para mantê-lo em situação irregular é permitir ao GNU a opção de usar -E
para outra coisa no futuro. As razões para permitir %E
em TIMEFORMAT, mas mantê-lo em situação irregular, podem ser semelhantes.