标题: [文本处理] (已解决)批处理如何将N个TXT文档中数列连续排列? [打印本页]
作者: zhouyigenii 时间: 2015-4-19 20:57 标题: (已解决)批处理如何将N个TXT文档中数列连续排列?
如何将多个TXT中|Adr 1|中的数字往下依次排列,数字只能占空格位,一直排列到每个文本的末尾。求高手指教,写个bat!谢谢
作者: pcl_test 时间: 2015-4-19 21:01
回复 1# zhouyigenii
打包一份样文上传附件
作者: pcl_test 时间: 2015-4-19 21:43
本帖最后由 pcl_test 于 2015-4-20 11:15 编辑
- @echo off &setlocal enabledelayedexpansion
- set "folder=处理结果"
- md "%folder%\" 2>nul
- for /f "delims=" %%z in ('dir /b *.txt') do (
- set n=0
- (for /f "tokens=1,2* delims=|" %%a in ('type "%%z"') do (
- if "%%c" neq "" (
- for /f "tokens=1*" %%d in ("%%b") do (
- set/a n+=1
- set "str=¥ !n!"
- echo,%%a^|%%d!str:~-6!^|%%c
- ))))>"%folder%\%%z"
- )
- pause
复制代码
作者: pcl_test 时间: 2015-4-19 21:44
问题得到解决后请在标题最前面注明[已解决]
http://www.bathome.net/thread-3473-1-1.html
作者: cobat 时间: 2015-4-19 22:00
本帖最后由 cobat 于 2015-4-19 22:20 编辑
- @echo off
- for /f "delims=" %%a in ('dir/b *.txt') do (
- set n=0
- (for /f "usebackq delims=" %%b in ("%%a") do (
- set "$=%%b"
- set/a n+=1
- setlocal enabledelayedexpansion
- set "#= !n!"
- echo !$:~,10!!#:~-6!!$:~16!
- endlocal
- ))>"_%%a"
- )
- pause
复制代码
作者: pcl_test 时间: 2015-4-19 22:31
回复 6# zhouyigenii
已在3楼修改
作者: zhouyigenii 时间: 2015-4-19 22:55
回复 7# pcl_test
啊啊啊。点错地方了,真不好意思!怎么改过来?
作者: pcl_test 时间: 2015-4-19 23:00
回复 7# zhouyigenii
没关系,评分改不了的
作者: zhouyigenii 时间: 2015-4-20 10:47
回复 8# pcl_test
Adr 这里全变成%d了
作者: pcl_test 时间: 2015-4-20 11:15
回复 9# zhouyigenii
已更正
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |