标题: [文本处理] 【已解决】批处理如何分别提取若干txt文本的第一行数据? [打印本页]
作者: 思想之翼 时间: 2013-4-19 02:40 标题: 【已解决】批处理如何分别提取若干txt文本的第一行数据?
本帖最后由 思想之翼 于 2013-4-19 18:26 编辑
有若干txt文本,列数相同,行数不定,欲分别提取若干txt文本的第一行数据,依次写入新建txt文本的第一行、第二行、第三行......恳望得到大家的帮助!
作者: tmplinshi 时间: 2013-4-19 05:36
- sed -s "1! d" *.txt >___1.txt
复制代码
作者: 思想之翼 时间: 2013-4-19 11:43
回复 2# tmplinshi
谢谢您的热心帮助!具体运用时,不能提取数据,烦请帮助看看,什么地方有误?
作者: BAT-VBS 时间: 2013-4-19 12:07
回复 3# 思想之翼
你的sed.exe是什么版本?
D:\Test>sed -s "1! d" *.txt
4 8 4 8 2
8 9 5 6 6
3 8 6 6 8
9 0 6 6 3
3 6 0 9 1
D:\Test>sed --version
sed (GNU sed) 4.2.2
作者: 思想之翼 时间: 2013-4-19 18:26
回复 4# BAT-VBS
谢谢提醒,代码运行正常。等回家在win7 64位操作系统下试试,希望也能够正常运行。
作者: CrLf 时间: 2013-4-19 18:42
- @echo off
- (for %%a in (*.txt) do (
- setlocal enabledelayedexpansion
- set /p "firstline="
- echo !firstline!
- endlocal
- )<%%a)>第一行.tmp
- move /y 第一行.tmp 第一行.txt
- pause
复制代码
作者: 思想之翼 时间: 2013-4-20 11:41
回复 6# CrLf
谢谢您的热心帮助!验证了一下,好像数据提取不是按照txt文本标号依次从上到下顺序提取,比如01.txt文本第一行数据排在了第39行,不知何故。
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |