找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 66037|回复: 20

[文本处理] [已解决]批处理怎样实现TXT文本中的行重新排列?

[复制链接]
发表于 2011-11-4 02:50:15 | 显示全部楼层 |阅读模式
本帖最后由 yx74110 于 2011-11-4 11:34 编辑

一个TXT文档有很多行。
例:
AAA+TAB键+BBB+TAB键+CCC
AAA+TAB键+BBB+TAB键+CCC
AAA+TAB键+BBB+TAB键+CCC
AAA+TAB键+BBB+TAB键+CCC
……………………

我希望处理出来这样排列
CCC----BBB
CCC----BBB
CCC----BBB
CCC----BBB
………………

评分

参与人数 1PB +2 收起 理由
CrLf + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2011-11-4 08:21:51 | 显示全部楼层
  1. @echo off
  2. (for /f "tokens=3,5 delims=+" %%a in (a.txt) do (
  3.     echo %%b----%%a
  4. ))>b.txt
复制代码

评分

参与人数 1PB +5 技术 +1 收起 理由
CrLf + 5 + 1 幸苦了,多加点

查看全部评分

 楼主| 发表于 2011-11-4 08:56:09 | 显示全部楼层
回复 2# awk


    首先谢谢你。可是不能用
发表于 2011-11-4 09:25:49 | 显示全部楼层
帖文本出来吧。例子有歧义
 楼主| 发表于 2011-11-4 09:39:09 | 显示全部楼层
回复 4# yangfengoo


    实在抱歉。文本牵扯客户的一些敏感信息。。忘谅解。。。
发表于 2011-11-4 09:39:51 | 显示全部楼层
回复 3# yx74110


详细说说哪里不能
 楼主| 发表于 2011-11-4 09:43:11 | 显示全部楼层
回复 6# awk


    我运行完毕以后 只导出了中间的某一行
结果是
----+TAB+CCC
发表于 2011-11-4 09:48:39 | 显示全部楼层
回复 7# yx74110


那说明你的真实数据跟顶楼给的例子在格式上不一致
 楼主| 发表于 2011-11-4 10:07:16 | 显示全部楼层
回复 8# awk


    AAA BBB CCC 可能是不等位数的。。

CCC里面包含@
发表于 2011-11-4 10:32:46 | 显示全部楼层
回复 9# yx74110


一毛钱关系都没有
代码是以加号为分隔符的
 楼主| 发表于 2011-11-4 10:41:12 | 显示全部楼层
回复 10# awk


    你测试了吗???
发表于 2011-11-4 10:45:53 | 显示全部楼层
回复 11# yx74110


你根本不知道怎么测试!!!
发表于 2011-11-4 10:47:19 | 显示全部楼层
回复 5# yx74110


你可以把敏感信息改成无关字符,但是一定要保持原有格式,传个附件上来。
 楼主| 发表于 2011-11-4 11:04:39 | 显示全部楼层
本帖最后由 yx74110 于 2011-11-4 11:06 编辑

回复 13# awk


guangzhou        lkkkk        lkkkk@163.com
neimeng        nm523        nm523@163.com
liaoning        liaoning87        liaoning87@163.com
zhejiang        hangzhoudalong        hangzhou8619@163.com
shanghai        shanghai123        shanghaitbv@163.com
qingdao        qingdao        qingdao888221@163.com
weihai        weihai654321        palxexef@163.com
zhengzhou        zhouzheng        siszhengzhou@163.com
wuhan        hubeiwuhan        shilong8721@163.com

文本如上  中间空白处是TAB键

排列出
lkkkk@163.com----lkkkk
nm523@163.com----nm523
liaoning87@163.com----liaoning87
hangzhou8619@163.com----hangzhoudalong
shanghaitbv@163.com----shanghai123
qingdao888221@163.com----qingdao
palxexef@163.com----weihai654321
siszhengzhou@163.com----zhouzheng
shilong8721@163.com----hubeiwuhan



这是其中的一段。

比较大的一个库。。
发表于 2011-11-4 11:10:25 | 显示全部楼层
这样呢?

  1. @echo off
  2. (for /f "tokens=2,3"  %%a in (a.txt) do (
  3.     echo %%b----%%a
  4. ))>b.txt
复制代码

评分

参与人数 1技术 +1 收起 理由
CrLf + 1 乐于助人

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 06:56 , Processed in 0.011594 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表