+ -
当前位置:首页 → 问答吧 → awk print

awk print

时间:2011-11-12

来源:互联网

大家好,我写了一个awk shell,统计一个名叫grade.txt的文件:
85#Junior
87#Senior
75#Senior
86#Junior
81#Senior


  这个awk shell统计Junior和Senior的行数,具体如下:

#!/bin/awk -f
BEGIN {
  FS="#";
  student["Junior"]=0;
  student["Senior"]=0;
}

{
  { for(senior_junior in student)
  #print $2 #请问为什么加了这一行打印相应的变量,统计就会出错了呢?
  if($2 == senior_junior)
  {
  #print senior_junior
  student[senior_junior]++;
  }
  }
}

END {
 { for(senior_junior in student)
  print "The class has", student[senior_junior], senior_junior, "students";
 }
}

请问大家“print $2”,为什么加了这一行打印相应的变量,统计就会出错了呢?

作者: chennut0802   发布时间: 2011-11-12

我试了一下好像没有错  
[cliner:/home/cliner/cliner/shellt]awk -f 39.sh grade.txt 
Junior
Senior
Senior
Junior
Senior
The class has 3 Senior students
The class has 2 Junior students
[cliner:/home/cliner/cliner/shellt]

作者: xiaoyuer5222   发布时间: 2011-11-12

统计什么地方出错了?

作者: ljc007   发布时间: 2011-11-13

热门下载

更多