![Board logo](images/default/logo.gif)
标题: [文本处理] [已解决]批处理怎样实现文本批量生成 求助~ [打印本页]
作者: necnec1 时间: 2015-3-27 22:08 标题: [已解决]批处理怎样实现文本批量生成 求助~
文本文件 AA.TXT 内容如下
TGSEC1503070000100-----TGSEC1503070002700
TGSTT1503070000500-----TGSTT1503070315900
前5个是字母 中间的150307是日期代表15年的3月7日 最后的7位数字 按照100的数额来翻倍 例如 0000200 0000300 一直到最后的0002700
最终的效果就是
TGSEC1503070000100
TGSEC1503070000200
TGSEC1503070000300
TGSEC1503070000400
中间省略 一直到
TGSEC1503070002700
请会的朋友帮个忙 谢谢~
作者: pcl_test 时间: 2015-3-27 22:20
本帖最后由 pcl_test 于 2015-3-27 22:23 编辑
回复 1# necnec1 - @echo off
- setlocal ENABLEDELAYEDEXPANSION
- (for /l %%i in (100 100 2700) do set n=00000000%%i &echo TGSEC150307!n:~-8!)>a.txt
复制代码
作者: cobat 时间: 2015-3-27 22:25
- (for /l %%a in (70000100,100,70002700) do @echo TGSEC15030%%a)>a.txt
复制代码
作者: necnec1 时间: 2015-3-27 22:30
回复 2# pcl_test
回楼主 我这个文本有几千行 我只举了其中的2行 你给的批处理好像只生成其中一个的结果 呵呵
TGSEC1503070000100-----TGSEC1503070002700
TGSTT1503070000500-----TGSTT1503070315900
作者: pcl_test 时间: 2015-3-27 22:43
回复 4# necnec1 - @echo off
- setlocal ENABLEDELAYEDEXPANSION
- (for /f "tokens=1* delims=-" %%a in ('type "AA.txt"') do (
- set n=%%a
- set m=%%b
- for /l %%i in (!n:~-8!,100,!m:~-8!) do echo,!n:~,10!%%i
- ))>a.txt
复制代码
作者: bailong360 时间: 2015-3-27 22:44
- @Echo Off
- SetLocal EnableDelayedExpansion
- (For /F "Tokens=1,2 Delims=-" %%a In (AA.TXT) Do (
- Set Start=%%a
- Set End=%%b
- Set Prefix=!End:~0,11!
- Set /A Start=1!Start:~11!-10000000,End=1!End:~11!-10000000
- For /L %%c In (!Start! 100 !End!) Do Set Num=0000000%%c&Echo !Prefix!!Num:~-7!
- ))>$AA.txt
bailong360发表于: 2015-03-27 22:44
是否符合要求?
PS 试一试无奈何兄的脚本![](images/smilies/default/smile.gif)
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |