Ошибки при выполнении команды switch/case в awk в Ubuntu и Mac
У меня очень странная проблема при выполнении следующего кода:
awk '{ foo = 1; switch (foo) { case 1: i=i+1; break; } }' ./tcpheader.txt
Получение следующей ошибки:
awk: syntax error at source line 1
context is
{ foo = 1; switch (foo) >>> { <<<
awk: illegal statement at source line 1
awk: illegal statement at source line 1
Есть идеи, в чем проблема?
Протестировано на Mac:
awk --version
Выход:
awk version 20070501
Протестировано на Ubuntu:
awk -W version
Выход:
mawk 1.3.3 Nov 1996, Copyright (C) Michael D. Brennan
compiled limits:
max NF 32767
sprintf buffer 2040
1 ответ
Решение
Установка gawk решила мою проблему:
sudo apt-get install gawk
в Mac:
sudo port install gawk