![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-12 00:52 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [求助]使用sed或gawk按列替换 |
| 可打印版本 2,559 / 15 |
| 第1楼 hgx126 | 发表于 2010-08-18 19:14 |
| 初级用户 发帖 80 积分 100 | |
|
[求助]使用sed或gawk按列替换 有三个文件如下:
a.txt b.txt c.txt 我想用sed或gawk命令将a.txt文件中第一列(以空格作分隔符)复制到第二列,再将此列数据对应b.txt文件中的第一列,替换成b.txt中的第二列; 同时将将a.txt文件中的第五列中的前三位数据复制到第五列前,再将此列数据(复制后的数据列)对应c.txt文件中的第一列,替换成c.txt中的第二列。 替换后文件内容如下: 求大家相助,写一批处理达到上述结果。要求:使用sed或gawk。 |
|
| 第2楼 hgx126 | 发表于 2010-08-19 22:25 |
| 初级用户 发帖 80 积分 100 | |
|
是这个不可能实现,还是高人暂时都不在?
|
|
| 第3楼 HAT | 发表于 2010-08-20 10:09 |
| 版主 发帖 5,017 积分 9,023 | |
|
不难
可能是这个论坛会gawk的人不多 |
|
| 第4楼 523066680 | 发表于 2010-08-20 10:22 |
| 银牌会员 发帖 1,133 积分 2,362 | |
|
不难
可能是现在积极的人不多 |
|
| 第5楼 523066680 | 发表于 2010-08-20 10:48 |
| 银牌会员 发帖 1,133 积分 2,362 | |
|
那些命令我都不会,也没打算学。
还是上批处理了
=========================== call 消耗大 换一下了 [ Last edited by 523066680 on 2010-8-20 at 16:04 ] |
|
| 第6楼 hgx126 | 发表于 2010-08-20 11:51 |
| 初级用户 发帖 80 积分 100 | |
|
我以前用的也是这个批处理,但速度慢。所以要求用sed和gawk处理。用sed和gawk速度可能只是上面这个批处理的几分甚至几十分之一。
|
|
| 第7楼 523066680 | 发表于 2010-08-20 13:06 |
| 银牌会员 发帖 1,133 积分 2,362 | |
|
嗖噶。这样的话倒是命令比较方便了呢
其他脚本写起来也不是很简练 坐等 |
|
| 第8楼 freeants001 | 发表于 2010-08-20 13:16 |
| 中级用户 发帖 244 积分 330 来自 湖北 | |
|
来段JS
修改下提高处理速度 [ Last edited by freeants001 on 2010-8-20 at 16:17 ] |
|
| 第9楼 hgx126 | 发表于 2010-08-20 18:05 |
| 初级用户 发帖 80 积分 100 | |
|
感谢freeants001,可惜我看不懂。还在想用sed或gawk。
我是不是有点顽固?呵呵 |
|
| 第10楼 523066680 | 发表于 2010-08-20 18:30 |
| 银牌会员 发帖 1,133 积分 2,362 | |
|
不会啊,标题就是“使用sed或gawk按列替换”
可惜我不会~ HAT版主快出手吧! |
|
| 第11楼 freeants001 | 发表于 2010-08-20 18:53 |
| 中级用户 发帖 244 积分 330 来自 湖北 | |
|
研究下AWK,由于类C特性和正则,所以学习曲比较,下面贴代码。
|
|
| 第12楼 freeants001 | 发表于 2010-08-20 19:19 |
| 中级用户 发帖 244 积分 330 来自 湖北 | |
|
测试了下速度,当a.txt为9.05M时,JS用时14.500秒,AWK用时仅2.484秒,好快,看来我得认真研究一番了
![]() |
|
| 第13楼 hgx126 | 发表于 2010-08-22 18:50 |
| 初级用户 发帖 80 积分 100 | |
|
freeants001兄能否把代码帖全?我对gawk使用只有一点点了解。
前面加上gawk,后面加上a.txt执行错误? [ Last edited by hgx126 on 2010-8-22 at 18:51 ] |
|
| 第14楼 freeants001 | 发表于 2010-08-22 20:38 |
| 中级用户 发帖 244 积分 330 来自 湖北 | |
|
11楼代码已贴全,11楼代码保存为配置文件(awk.ini),命令行下执行:
AWK -f awk.ini a.txt |
|
| 第15楼 asnahu | 发表于 2010-08-30 00:49 |
| 初级用户 发帖 53 积分 99 | |
|
思路来源于freeants001:
|
|
| 1 2 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |