shell脚本AWK命令中变量$line的用法

文件a.unl内容:
1
2
3
4

脚本内容
#!/usr/bin/ksh
date
awk -F"|" 'BEGIN{
a="a.unl"

print "a:"
while(getline < a)
{
print $line ###########
a_hash[$line]=1
print a_hash[$line]
}
close(a)
}'
date

这个脚本会在#号行报错, 不知道为什么
请大神帮忙解答一下

话说我在redhat下执行未报错,结果如下:

[root@HZHG-STD-WEB-P3 ~]# sh test
Mon Nov 25 08:38:51 CST 2013
a:
1
1
2
1
3
1
4
1
Mon Nov 25 08:38:51 CST 2013

 

不过我把开头释义代码修改成 #!/bin/bash了,你那个开头释义我从没用过:

#!/bin/bash
date
awk -F"|" 'BEGIN{
a="a.unl"
print "a:"
   while(getline < a)
    {
       print $line  ###########
       a_hash[$line]=1
       print a_hash[$line]
    }
    close(a)}'
date

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网