Board logo

标题: 如何使用批处理提取变量所在的行! [打印本页]

作者: heyoug     时间: 2008-10-15 20:13    标题: 如何使用批处理提取变量所在的行!
原文件a.txt内容如下:
2008100122220333333001
2008100222220333333001
2008100322220333333001
2008100422220333333001
2008100522220333333001
2008100122220444444001
2008100222220444444001
2008100322220444444001
2008100422220444444001
2008100522220444444001

怎么写一个批处理实现提取以444444和 20081001为标准的这一行,这2个变量从键盘输入,并保存为 b.txt

作者: tireless     时间: 2008-10-15 20:48
不太明白楼主的意思。从键盘输入?

作者: HAT     时间: 2008-10-15 20:51
@echo off
set /p var1=第一个变量是啥?
set /p var2=第二个变量是啥?
findstr "%var1% %var2%" "a.txt"
pause

作者: heyoug     时间: 2008-10-15 20:57
不好意思,没有说清楚,
我的意思是
从键盘输入 444444 赋予变量1
从键盘输入 20081001赋予变量2
然后检查 a.txt文件,没行中同时存在这2个变量的才输出到 b.bat

作者: HAT     时间: 2008-10-15 21:20
@echo off
set /p var1=第一个变量是啥?
set /p var2=第二个变量是啥?
findstr "%var1%" "a.txt"|findstr "%var2%"
pause

作者: tireless     时间: 2008-10-15 21:36
@echo off
set /p var1=输入变量1:
set /p var2=输入变量2:
for /f %%a in ('findstr "%var2%.*%var1%" "a.txt"') do if "%%a" neq "" echo %%a>b.txt


Last edited by tireless on 2008-10-15 at 21:46 ]