我遇到了bash中与for循环结合使用awk的一些问题;我在Ubuntu 14.04上运行它。这是我写的剧本:for和awk在bash中
#!/bin/bash
L=99;
for j in 1 2 3
do
awk -v J=$j '
BEGIN {active=0}
/Sweep 6/ {active=1}
/Energy/ {
a=substr($6,1,length($6)-1);
if ((active) && (a==J)) {
getline;
getline;
getline;
print a+1, $5
}
}
'
done
没有进入到文本文件,我处理的细节,什么剧本确实是刚刚运行的是在周期为J = 1,而不是J = 1 ,2和3.问题在哪里?
在此先感谢!
尝试使用'echo“j = $ j”'在awk前后调试一下。 – 2014-12-05 10:17:47