Board logo

标题: 如何才能 用FOR 把H:提出来 [打印本页]

作者: ww111222     时间: 2007-5-13 18:19    标题: 如何才能 用FOR 把H:提出来
这是ghost11 生成的 txt文件里的内容 想用for 把 Desc 后面的 H: 提出来 这是 第1硬盘的最后一个分区 Desc H: 1.4: [1KEYRESTORE] 看了 FOR 的教程,还是搞不明白,能否请教一下 我借鉴的 BAT代码 是把1:4给找出来了 type ghost.bat @Echo off ghost -dd >NUL set p=1 call FindLast.bat 1 2 3 4 5 6 7 8 9 10 11 12 13 14 echo LastPartition:%LastP% echo. echo Edit GHOST command at here ... pause type findlast.bat :1 FIND /i "%p%:%1" GHSTSTAT.TXT >NUL if errorlevel 1 goto 2 set LastP=%p%:%1 Shift goto 1 :2 del GHSTSTAT.TXT

作者: lxmxn     时间: 2007-5-13 19:17
要提取那个 H: 一行,看看它那一行和别的行有什么区别和特征,再来对症下药。 我找不到它和别的行有什么区别,貌似 [1KEYRESTORE] 是个标志?

作者: terse     时间: 2007-5-13 20:16
@echo off setlocal enabledelayedexpansion set LastP=1.4 for /f "tokens=2 delims=, " %%a in ('findstr "\<Desc.*%LastP%\>" 1.txt') do set lp=%%a echo 最后盘符%lp% pause 这样行吗? 你可以把你上面的P处理中: FIND /i "%p%:%1" GHSTSTAT.TXT >NUL改为: FIND /i "%p%.%1" GHSTSTAT.TXT >NUL 那样要是可行的话 我给的set LastP=1.4就可以不要 [ Last edited by terse on 2007-5-13 at 08:26 PM ]

作者: ww111222     时间: 2007-5-14 01:32
谢谢,两位 指点, 1.4是第一硬盘的第4个分区, 所以不能指定是1.4 我想唯一的 条件是 Desc *: 1.×: 这个× 是最大的 就是了

作者: TBAGE     时间: 2007-5-14 02:56
学习。。。。。。。。。。。。。。。。。。。。。。

作者: ttyp     时间: 2007-5-14 09:34
@echo off findstr /i "desc [a-zA-Z]: 1\.\d.*" a.txt>>b.txt for /f "tokens=3 delims= " %%a in (b.txt) do ( echo %%a>>c.txt ) sort /r c.txt>d.txt for /f %%i in (d.txt) do ( call :findlast %%i goto :end ) :findlast for /f "tokens=2 delims= " %%x in ('findstr "%1" b.txt') do echo %%x goto :eof :end @del b.txt @del c.txt @del d.txt

作者: zouzhxi     时间: 2007-5-14 09:55
如何将
K810-019 <00> UNIQUE Registered
里边的k810-019提取出来...????

作者: flyinspace     时间: 2007-5-14 11:56
可以通过比较大小提出来。。。 path h: path d: 通过比较 h 和 d 的大小就可以了。

作者: lxmxn     时间: 2007-5-14 12:03
Originally posted by zouzhxi at 2007-5-14 09:55: 如何将里边的k810-019提取出来...????
新问题请重新开帖提出。