- 论坛徽章:
- 0
|
本帖最后由 bamqjurgg 于 2016-07-12 22:02 编辑
图片为excel格式方便大家查看 图片的中的“A”均为未送货 空值不好处理 所以我全部替换成了A
原始文件为9月份总共送货的品种 现在想把 当天送货的菜品提取出来 如提取9月1号的菜品 对应的$16列为送货数量 $2为送货单位 $4为送货数量 $37 为单价- awk '/^[0-9]/{if ( $16 !~ "A" ){print $2","$4","$16","$37}}' hedian.txt
复制代码 结果如下:
[alex@virtual tmp]$ awk '/^[0-9]/{if ( $16 !~ "A" ){print $2","$4","$16","$38}}' hedian.txt
茄子,公斤,1.5,87.57
平菇,公斤,1,66.50
鲜香菇,公斤,1.5,87.00
花生米,公斤,1.5,20.70
鸡蛋,公斤,5,351.05
鲁花压榨一级花生,罐,6,840.00
深圳面粉,公斤,5,23.20
金唛香麻油,瓶,2,35.20
广味源五香粉,包,1,6.00
农夫山泉桶装水,桶,20,576.00
我想用递归查询出9月份每一天的菜品 更改awk为:- awk '/^[0-9]/{for (i=16;i<=35;i++){if ( $i !~ "A" ){print $2","$4","$i","$37}}}' hedian.txt
复制代码 但结果还是一个月汇总在一起的
茄子,公斤,1.5,6.30
茄子,公斤,2.5,6.30
茄子,公斤,2.4,6.30
茄子,公斤,2.5,6.30
茄子,公斤,2.5,6.30
........
件伊利优酸乳,件,1,41.20
件伊利纯牛奶,件,1,41.20
白砂糖,公斤,2.5,6.60
白砂糖,公斤,2.5,6.60
家乐鸡精,罐,1,44.00
小南乳,瓶,3,5.30
有什么办法可以直接让其生成不同的文件么 只要能分开就好
比如 根据 i=1 生成1.txt i=2时 2.txt 分割开 或者采取分隔符分割也可
想结合sed来做
for i in `seq 16 35 `; do awk '/^[0-9]/{if ( $i !~ "A" ){print $2","$4","$i","$37}}' hedian.txt > $i; done
但得到的文件全为空文件 求解释
|
|