Awk没有将文本文件中字段的值赋给变量。这就是我试过的:
awk 'BEGIN {FS = ","};
{ a=$6;
print $a;
}' /location/canzee/textfile.txt
它打印所有行中的所有字段,而不是所有行中的第6个字段。然而,如果我这样做,它会打印每行中的第6个字段:
awk 'BEGIN {FS = ","};
{ print $6;
}' /location/canzee/textfile.txt
有人可以帮忙吗?
答案 0 :(得分:3)
$a
并不代表您认为的含义。您只想使用print a
,而不是print $a
。例如,如果a
包含值3
,那么print $a
将打印字段3.在您的情况下,a
可能包含非数字,在这种情况下数字a
的值为零,因此它打印$0
,表示整行。