+ -
当前位置:首页 → 问答吧 → 关于awk shell

关于awk shell

时间:2011-11-12

来源:互联网

大家好!我写了一个很简单的Shell:
#!/bin/awk -f
BEGIN {
  print "$0 test0:", $0;
}

有一个文件,内容如下:
85#Junior
87#Senior
75#Senior
86#Junior
81#Senior

请问两个问题:
1.为什么执行:./awk_array.sh grade.txt,没有文本打印出来呢?当我把文件改为
#!/bin/awk -f
BEGIN {
  #print "$0: test0", $0;
}
{
  print "$0: test1", $0;
}
END{
  print "$0: test2", $0;
}

这样却有文本打印出?awk Shell方面的语法结构是怎样的?

2.我想学习Shell方面的编程,尤其是awk Shell方面的,请问有什么实用的教程可以推荐呢?

谢谢大家!

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

在BEGIN语句块里面awk还没有开始读文件内容,所以$0为空

O'Reilly sed & awk 2nd Edition 英文版
http://bbs.chinaunix.net/viewthread.php?tid=1588614#pid11286082

O'Reilly sed & awk 2nd Edition 中文高清修订第3版
http://bbs.chinaunix.net/thread-1743038-1-1.html

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

热门下载

更多