Разница между gawk и awk

50

Пытаетесь понять разницу между двумя функциями gawk и awk? Когда можно использовать gawk против awk? Или они одинаковы с точки зрения использования?

Кроме того, можно ли привести пример?

chrisjlee
источник
1
Гугл нашел ответ здесь
1
@hesse можешь привести пример?
Chrisjlee

Ответы:

49

AWK - это язык программирования. Существует несколько реализаций AWK (в основном в виде интерпретаторов). AWK был записан в POSIX . Основные реализации, используемые сегодня:

  • nawk(«Новый awk», эволюция oawk, оригинальная реализация UNIX), используется в * BSD и широко доступен в Linux;
  • mawkбыстрая реализация, которая в основном придерживается стандартных функций;
  • gawkреализация GNU со многими расширениями;
  • Busybox (маленький, предназначенный для встраиваемых систем, не так много возможностей).

Если вы заботитесь только о стандартных функциях, звоните awk, который может быть Gawk или Nawk или Mawk или какой-либо другой реализации. Если вы хотите использовать возможности GNU awk, используйте gawkPerl или Python.

Жиль "ТАК - перестань быть злым"
источник
4
На самом деле BusyBox awkдовольно близок по поведению к gawkv3; Я думаю, что это более полнофункциональный, чем nawk.
dubiousjim