标题: 求助,BAT读取指定文本内容第几行并在Popup反映出来
[打印本页]
作者: dragonamd
时间: 2008-8-22 06:49
标题: 求助,BAT读取指定文本内容第几行并在Popup反映出来
用BAT检测C盘最新生成的.TXT文件名字并且读取文本内容的第2行然后用VBS 的Popup显示出这个文件的名字和内容,。
作者: HAT
时间: 2008-8-22 09:55
@echo off
for /f "tokens=*" %%\ in ('dir /b /tc /o-d /a C:\*.txt') do (
set NewFile=%%\
goto :next
)
:next
for /f "tokens=1,2* delims=:" %%a in ('findstr /n . "C:\%NewFile%"') do (
if "%%a" equ "2" (
set ScdLine=%%b
goto :show
)
)
:show
mshta vbscript:createobject("wscript.shell").popup("%ScdLine%")(window.close) & exit
作者: slore
时间: 2008-8-22 10:39
可以直接skip嘛
作者: HAT
时间: 2008-8-22 10:41
@echo off
for /f "tokens=*" %%\ in ('dir /b /tc /o-d /a C:\*.txt') do (
set NewFile=%%\
goto :next
)
:next
for /f "skip=1 tokens=*" %%a in ('findstr . "C:\%NewFile%"') do (
set ScdLine=%%a
goto :show
)
:show
mshta vbscript:createobject("wscript.shell").popup("%ScdLine%")(window.close) & exit
作者: dragonamd
时间: 2008-8-22 13:27
比如我的第2行中 (1656166) 能不能去掉括号直接是 1656166
作者: HAT
时间: 2008-8-22 16:18
全角括号()?
还是半角括号()?
作者: dragonamd
时间: 2008-8-22 19:00
( 是这样的
作者: HAT
时间: 2008-8-22 20:36
@echo off
for /f "tokens=*" %%\ in ('dir /b /tc /o-d /a C:\*.txt') do (
set NewFile=%%\
goto :next
)
:next
for /f "skip=1 tokens=*" %%a in ('findstr . "C:\%NewFile%"') do (
set ScdLine=%%a
goto :show
)
:show
mshta vbscript:createobject("wscript.shell").popup("%ScdLine:~1,-1%")(window.close) & exit