由买买提看人间百态

topics

全部话题 - 话题: initlen
(共0页)
l****g
发帖数: 122
1
来自主题: Linux版 - awk问题求救
testvar如何定义的?如何知道它是array?
稍加改动就可以跑,看看你就知道为什么你的不可以了-
#!/bin/awk -f
BEGIN {
}
{
split($0, testvar)
print "initLen=", length(testvar), "\n"
testvar[length(testvar) + 1]=1
testvar[length(testvar) + 2]=2
for (i = 1; i <= length(testvar); ++i) {
print "testvar[", i, "]=", testvar[i], "\n"
}
}
~/work/shell $ echo "1 2 3" | awk -f xx6.awk
initLen= 3
testvar[ 1 ]= 1
testvar[ 2 ]= 2
testvar[ 3 ]= 3
testvar[ 4 ]= 1
testvar[ 5 ]=
testvar[ 6 ]= 2
xt
发帖数: 17532
2
来自主题: Linux版 - awk问题求救
今天恶补awk,写了这么个小程序
#!/bin/awk -f
BEGIN {
}
{
print "initLen=", length(testvar), "\n"
testvar[length(testvar) + 1]=1
testvar[length(testvar) + 2]=2
for (i = 1; i <= length(testvar); ++i) {
print "testvar[", i, "]=", testvar[i], "\n"
}
}
结果:
awk: test2.awk: line 7: illegal reference to variable testvar
awk: test2.awk: line 8: illegal reference to variable testvar
awk: test2.awk: line 10: illegal reference to variable testvar
请问为什么出错?
xt
发帖数: 17532
3
来自主题: Unix版 - awk问题求救 (转载)
【 以下文字转载自 Linux 讨论区 】
发信人: xt (拷贝猫), 信区: Linux
标 题: awk问题求救
发信站: BBS 未名空间站 (Sat Nov 17 18:13:38 2012, 美东)
今天恶补awk,写了这么个小程序
#!/bin/awk -f
BEGIN {
}
{
print "initLen=", length(testvar), "\n"
testvar[length(testvar) + 1]=1
testvar[length(testvar) + 2]=2
for (i = 1; i <= length(testvar); ++i) {
print "testvar[", i, "]=", testvar[i], "\n"
}
}
结果:
awk: test2.awk: line 7: illegal reference to variable testvar
awk: test2.awk: line 8: illegal reference to variable testvar
awk: te... 阅读全帖
(共0页)