Board logo

标题: [文件操作] 批处理如何提取文本中每行数字中的前四个数字? [打印本页]

作者: heyoug    时间: 2010-5-27 20:31     标题: 批处理如何提取文本中每行数字中的前四个数字?

文本A.TXT中的内容如下,如何提取每行数字中前四个数字输出到B.TXT
0101192947
0108204951
0109205018
0101211040
0123211310
0117211353
0106211426
------------------------------------------
以上例子中 B.TXT文本中的内容应该为
0101
0108
0109
0101
0123
0117
0106

[ 本帖最后由 heyoug 于 2010-5-27 20:43 编辑 ]
作者: vsbat    时间: 2010-5-27 21:08

  1. setlocal  enabledelayedexpansion
  2. cd.>b.txt
  3. for /f %%i in (a.txt) do (
  4. set "t=%%i"
  5. set "t=!t:~0,-6!"
  6. echo !t! >>b.txt
  7. )
  8. pause
复制代码

作者: CUer    时间: 2010-5-27 21:17

  1. gawk "{print substr($0,1,4)}" 1.txt >2.txt
复制代码

作者: CUer    时间: 2010-5-27 21:17

  1. sed "s/\(^....\).*/\1/" 1.txt >2.txt
复制代码

作者: hanyeguxing    时间: 2010-5-28 14:50

  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f %%a in (a.txt) do set a=%%a&echo.!a:~0^,4!)>b.txt
复制代码





欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2