
DOS批处理:提取a.txt的1行;2行;3行分别到1.txt;2.txt;3.txt(这里的1行;2行;3行可以分为任意行) 80
4个回答
展开全部
既然没人回答你,我给你个曲线救国的思路吧。
如果你的a.txt是分好了行的,也没其他分隔符影响,那就直接用excel打开文档,应该是自动给你一行行放好的,此时你的文档内容应该在A列。在A列前面插入一列,让那一行的内容变成B列,A列里面A1单元格写上echo,然后下拉,原来的文本文件有几行就下拉几行。C1填写>(就是半角的大于号),然后也下拉。D1填写1.txt,下拉,这样就可以了。
然后将这个文件另存为creat.bat,运行,就按照你的要求建立了。
如果你想用其他行的内容建立文件,调整一下相应单元格即可。
如果你的a.txt是分好了行的,也没其他分隔符影响,那就直接用excel打开文档,应该是自动给你一行行放好的,此时你的文档内容应该在A列。在A列前面插入一列,让那一行的内容变成B列,A列里面A1单元格写上echo,然后下拉,原来的文本文件有几行就下拉几行。C1填写>(就是半角的大于号),然后也下拉。D1填写1.txt,下拉,这样就可以了。
然后将这个文件另存为creat.bat,运行,就按照你的要求建立了。
如果你想用其他行的内容建立文件,调整一下相应单元格即可。
展开全部
@echo off
:: 如果1.txt中找到了222,就把此行之下的内容都输到2.txt中去
set count=0
for /f "tokens=*" %%i in (1.txt) do (
set /a count+=1
echo %%i|findstr "222">nul && goto :ok
)
goto :eof
:ok
cd.>2.txt
for /f "skip=%count% tokens=*" %%i in (1.txt) do (>>2.txt echo %%i)
输出指定行内容,LZ是这个意思么
:: 如果1.txt中找到了222,就把此行之下的内容都输到2.txt中去
set count=0
for /f "tokens=*" %%i in (1.txt) do (
set /a count+=1
echo %%i|findstr "222">nul && goto :ok
)
goto :eof
:ok
cd.>2.txt
for /f "skip=%count% tokens=*" %%i in (1.txt) do (>>2.txt echo %%i)
输出指定行内容,LZ是这个意思么
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
dos 里面的东西一般不要乱改 有可能会让你丢失本机的数据或者不能开机
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个没问题,但你得说明你要提取哪几行?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询