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

[文本处理] 批处理如何按指定注释顺序显示文本?

[复制链接]
发表于 2011-12-19 10:19:44 | 显示全部楼层 |阅读模式
现在我有一个文本 1.txt 内容如下

1        城东        2010-1-4        105530153998671        4609    豆趣               


我想把文本的每一个部分都加上前缀注释

如下:

序号: 1
地址: 城东
时间: 2010-1-4
终端号 :105530153998671
编号: 6409
名称:豆趣

我现在写了代码如下:
  1. @echo off
  2. color e
  3. title                    文本分类

  4. setlocal enabledelayedexpansion
  5. for /f "delims=," %%i in (1.txt) do (
  6. set sy=
  7. for %%a in (%%i) do (
  8. echo %%a
  9. )

  10. )


  11. pause >nul
复制代码
无法实现我要的功能 ,我也没思路了

求教
发表于 2011-12-19 10:43:32 | 显示全部楼层
  1. @echo off
  2. (for /f "tokens=1-6" %%a in (1.txt) do (
  3.   echo 序号: %%a
  4.   echo 地址: %%b
  5.   echo 时间: %%c
  6.   echo 终端号 :%%d
  7.   echo 编号: %%e
  8.   echo 名称:%%f

  9. ))>2.txt
  10. start 2.txt

复制代码
 楼主| 发表于 2011-12-19 11:05:35 | 显示全部楼层
谢谢 ,  很完美。
 楼主| 发表于 2011-12-19 11:27:57 | 显示全部楼层
回复 2# jellyhk


   求教
现在有1.txt-10.txt 等10个文本文件。(这些文件在同一个文件夹内,且格式相同。)
大侠的代码已经实现文件的注释前缀,但是是全部显示。 我想 只显示符合 我要求的条目。
例如 我想在 下面五条数据中找到 序号为 4 的数据条目,且只显示出来。(实际上其实是有很多个文本的)

1        城东        2010-1-4        105530153998671        4609        1055301539986710001        豆趣
2        城东        2010-1-4        105530148128672        4608        1055301481286720001        网趣               
3        滇龙        2010-1-6        105530115208676        4615        1055301152086760001        序古               
4        滇龙        2010-1-6        105530115208676        4616        1055301152086760002        致力                       
5        城南        2010-1-7        105530115208680        4657        1055301152086800001        龙润
发表于 2011-12-20 19:41:19 | 显示全部楼层
本帖最后由 jellyhk 于 2011-12-20 20:15 编辑

放同目录!

  1. @echo off
  2. set /p n=输入你想显示的序号:
  3. for /f "delims=" %%i in ('dir /b *.txt') do (
  4.    for /f "usebackq tokens=1-7" %%a in ("%%i") do (
  5.   if "%%a" == "%n%" (
  6.   echo 序号: %%a
  7.   echo 地址: %%b
  8.   echo 时间: %%c
  9.   echo 终端号 :%%d
  10.   echo 编号: %%e
  11.   echo 名称:%%g
  12. )
  13. )
  14. )
  15. pause
复制代码
这段代码是以4楼为准!
为什么1楼和4楼在名称前不一样?
1楼是
1        城东        2010-1-4        105530153998671        4609         豆趣
4楼是:
1        城东        2010-1-4        105530153998671        4609        1055301539986710001        豆趣
发表于 2011-12-22 16:28:01 | 显示全部楼层
  1. @echo off
  2. (For /f "tokens=1-6" %%a in (1.txt) do (
  3.         echo 序号: %%a
  4.         echo 地址: %%b
  5.         echo 时间: %%c
  6.         echo 终端号 :%%d
  7.         echo 编号: %%e
  8.         echo 名称: %%f
  9.         echo.
  10.         echo.
  11.         ))>11.txt
  12. pause
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-18 12:47 , Processed in 0.019495 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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