繁体   English   中英

在Ubuntu和Mac中的awk命令中执行switch / case时出错

[英]Errors when executing switch/case in awk command in Ubuntu and 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

安装gawk解决了我的问题:

sudo apt-get install gawk

在Mac中:

sudo port install gawk

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM