awk没有将字段值赋给变量

时间:2014-07-07 19:53:36

标签: awk

Awk没有将文本文件中字段的值赋给变量。这就是我试过的:

awk 'BEGIN {FS = ","};
{ a=$6;
print $a;
}' /location/canzee/textfile.txt

它打印所有行中的所有字段,而不是所有行中的第6个字段。然而,如果我这样做,它会打印每行中的第6个字段:

awk 'BEGIN {FS = ","};
{ print $6;
}' /location/canzee/textfile.txt

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:3)

$a并不代表您认为的含义。您只想使用print a,而不是print $a。例如,如果a包含值3,那么print $a将打印字段3.在您的情况下,a可能包含非数字,在这种情况下数字a的值为零,因此它打印$0,表示整行。