在我的awk代码中,我试图找到一种迭代文件(data1.txt)并附加文件行的方法 如果是,则计算文件行数 文件行==" 04"
的substr($ 0,29,2)DATA1.TXT
6597243042 20160305001100003140152852153019000127000200
6597243042 20160305001100003140170306190306020000000200
6597243042 20160305001100003140170552190552020000000200
6597243042 20160305001100003140201430201543000113000400
6592311319 20160305041100003460072719072839000120001200
6592311319 20160305041100003460072927072952000025001200
在这种情况下只有2行符合条件(substr($ 0,29,2)==" 04")
Filename="def"
file="data1.txt"
#awk '{count1=0}'
while IFS= read line
do
awk '{ if (substr($0,29,2)=="04") {print substr($0,29,4)}}'
done <"$file"
答案 0 :(得分:1)
做你想要做的事情就是:
awk '{print $0, (substr($0,29,2)=="04") ? substr($0,29,4) : "")}' "$file"
但是您的输入文件没有任何情况下29/30的字符是04所以idk ......