Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Shell Awk数组语法错误_Shell_Awk - Fatal编程技术网

Shell Awk数组语法错误

Shell Awk数组语法错误,shell,awk,Shell,Awk,我试图使用awk作为某些类型的元素计数器,如下所示,但我得到了语法错误 cat file | awk '{if($2>$3)A[$1]++}END{for(index in A){print index, A[index]}}' 有人能帮忙吗 以下是语法错误: awk: {if($2>$3)A[$1]++}END{for(index in A){print index, A[index]}} awk: ^ syntax

我试图使用awk作为某些类型的元素计数器,如下所示,但我得到了语法错误

cat file | awk '{if($2>$3)A[$1]++}END{for(index in A){print index, A[index]}}'
有人能帮忙吗

以下是语法错误:

awk: {if($2>$3)A[$1]++}END{for(index in A){print index, A[index]}}
awk:                                 ^ syntax error
awk: {if($2>$3)A[$1]++}END{for(index in A){print index, A[index]}}
awk:                                                  ^ syntax error
awk: {if($2>$3)A[$1]++}END{for(index in A){print index, A[index]}}
awk:                                                           ^ syntax error

非常感谢

看来
索引
是一个。把它换成别的东西。也许

看来
索引
是一个。把它换成别的东西。也许

良好做法:
  • 正如凯文指出的,
    index
    是一个保留字。尝试对
    数组下标使用不同的

  • 无用地使用
    cat
    awk
    可以将
    filename
    作为输入。做这样的事-

    awk'{if($2>$3)A[$1]+}END{for(i in A){print i,A[i]}'文件

  • 如果
    $2>$3
    是唯一的条件,那么您可以将其缩短为以下内容-

    awk'$2>$3{A[$1]+}END{for(i in A){print i,A[i]}'文件

  • 良好做法:
  • 正如凯文指出的,
    index
    是一个保留字。尝试对
    数组下标使用不同的

  • 无用地使用
    cat
    awk
    可以将
    filename
    作为输入。做这样的事-

    awk'{if($2>$3)A[$1]+}END{for(i in A){print i,A[i]}'文件

  • 如果
    $2>$3
    是唯一的条件,那么您可以将其缩短为以下内容-

    awk'$2>$3{A[$1]+}END{for(i in A){print i,A[i]}'文件