中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 请教一下awk代码怎么转化到bat文件中来
作者:
标题: 请教一下awk代码怎么转化到bat文件中来 上一主题 | 下一主题
dhyang
新手上路





积分 10
发帖 4
注册 2007-6-16
状态 离线
『楼 主』:  请教一下awk代码怎么转化到bat文件中来

各位大侠,请教一下下面的unix的shell下面的awk代码怎么转化到bat文件中来,诚请不吝赐教,谢谢

awk -F\| '{printf "%s%s%s%s%s%s\n",$1,$2,$3,$4,$5,$6}' $sourcefile > $file1

awk -v importdate=$ImportDate '{if(substr($0,24,2)=="09"||substr($0,24,2)=="29"||substr($0,24,2)=="19"||substr($0,24,2)=="39"||substr($0,24,2)=="10"||substr($0,24,2)=="14") printf"%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|%s|\n",importdate,substr($0,1,5),substr($0,6,5),substr($0,11,5),substr($0,16,17),substr($0,33,3),substr($0,36,18),substr($0,54,10),substr($0,64,8),substr($0,72,9),substr($0,81,1),substr($0,82,18),substr($0,100,1),substr($0,101,3),substr($0,104,9),substr($0,113,5),substr($0,118,5),substr($0,123,20),substr($0,143,60),substr($0,203,5),substr($0,208,5),substr($0,213,5),substr($0,218,6),substr($0,224,3),substr($0,227,15),substr($0,242,4),substr($0,246,40),substr($0,286,10),substr($0,296,15),substr($0,311,18),substr($0,329,18),substr($0,347,18),substr($0,365,18),substr($0,383,34),substr($0,417,60)}'  $file1 > $file2

awk -F\\ '{printf "%s%s%s%s%s%s\n",$1,$2,$3,$4,$5,$6}' $file2 > $file1
awk -F\/ '{printf "%s%s%s%s%s%s\n",$1,$2,$3,$4,$5,$6}' $file1 > $file2

head -n 1 $file2 > $file3
tail -n 1 $file2 >> $file3

awk -F\| '{printf "%s\n",$5}' $file3 > $lastfile

2007-6-16 10:27
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 2 楼』:  


BEGIN{
#以#号开头的是注释行
#BEGIN里面写上初始化的代码,比如初始化变量等等
#这里也可以写脚本对文件进行处理之前要做的事情
}
{
#这里是对文件进行处理的一段
}
END{
#对文件的处理完了之后要进行的操作
}
假如以上脚本为 awkscript.txt ,那么在命令行可以这样来处理文件 input.txt ,并将结果输出到 output.txt 文件中去。
awk -f awkscript.txt input > output.txt
自己照这个来写。

2007-6-16 10:55
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
dhyang
新手上路





积分 10
发帖 4
注册 2007-6-16
状态 离线
『第 3 楼』:  

试了一下,好象不行,我是希望在bat文件中实现上诉awk的功能,请问除了第三方软件有办法没?

2007-6-16 16:08
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 4 楼』:  

在批处理里面是可以的,建议楼主先看看awk的基础教程。

2007-6-16 21:21
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
dhyang
新手上路





积分 10
发帖 4
注册 2007-6-16
状态 离线
『第 5 楼』:  

这个是不是在unix下运行的啊?我是想要在dos下运行的~~~

2007-6-18 10:36
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: