Diferencia entre gawk vs. awk

50

¿Tratando de entender las diferencias entre las dos funciones gawk vs. awk? ¿Cuándo se usaría gawk vs awk? ¿O son iguales en términos de uso?

Además, ¿podría uno dar un ejemplo?

chrisjlee
fuente
1
Google encontró una respuesta aquí
1
@hesse, ¿puedes dar un ejemplo?
chrisjlee

Respuestas:

49

AWK es un lenguaje de programación. Hay varias implementaciones de AWK (principalmente en forma de intérpretes). AWK ha sido codificado en POSIX . Las principales implementaciones en uso hoy en día son:

  • nawk("New awk", una evolución de oawkla implementación original de UNIX), utilizada en * BSD y ampliamente disponible en Linux;
  • mawk, una implementación rápida que se adhiere principalmente a las características estándar;
  • gawk, la implementación de GNU, con muchas extensiones;
  • el Busybox (pequeño, diseñado para sistemas embebidos, no muchas características).

Si solo le interesan las funciones estándar, llame awk, que puede ser Gawk o nawk o mawk o alguna otra implementación. Si desea las características en GNU awk, use gawkPerl o Python.

Gilles 'SO- deja de ser malvado'
fuente
44
En realidad, BusyBox awktiene un comportamiento bastante similar al gawkv3; Creo que es más completo que nawk.
dubiousjim