e- e f- versões dos comandos

2

Eu notei que alguns comandos também vêm com versões e- e f, por exemplo grep, egrep, fgrep e alguns outros.

Existe algum padrão ou uma convenção de nomenclatura se um comando em particular deve ter versão e-ou f?

    
por Mitten 29.08.2013 / 12:00

1 resposta

7

Existe uma pista sobre isso em, por exemplo, man grep , que também é man fgrep e man egrep - muito frequentemente, ferramentas com pequenas variações como essa terão uma página man para todas as variações, explicando-as em relação um ao outro:

In addition, two variant programs egrep and fgrep are available. egrep is the same as grep -E. fgrep is the same as grep -F. Direct invocation as either egrep or fgrep is deprecated, but is provided to allow historical applications that rely on them to run unmodified.

Presumivelmente, fgrep e egrep já foram nomes padronizados, mas se você olhar mais abaixo na página man note que -E e -F são "especificados por POSIX", o que implica mudança de padronização, mas (como dito acima) , compatibilidade retroativa é mantida.

No tópico de se os programas 'deveriam' ter variantes - não, não há padrão. Mas existem muitos programas que o fazem graças à natureza leve dos links (veja ln - ignorar links simbólicos).

    
por 29.08.2013 / 12:09