中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » 有以X:Y\PATH\FILE格式判断NTFS下某文件存在的DOS命令么
« [1] [2] »
作者:
标题: 有以X:Y\PATH\FILE格式判断NTFS下某文件存在的DOS命令么 上一主题 | 下一主题
terse
银牌会员





积分 2404
发帖 946
注册 2005-9-8
状态 离线
『第 16 楼』:  

PSI行吗?用XUSEN的把我的NTFS格式的主分区C盘影为H符,但分区号却不是1,而是排在后面,转换成问题啊!

2007-3-30 02:11
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
0451lym
高级用户





积分 760
发帖 357
注册 2005-10-10
状态 离线
『第 17 楼』:  

呵呵弄错了,知道是什么用的了

[ Last edited by 0451lym on 2007-3-30 at 11:33 AM ]

2007-3-30 05:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
0451lym
高级用户





积分 760
发帖 357
注册 2005-10-10
状态 离线
『第 18 楼』:  

我也不知道是干什么用的,你把实验的结果告诉我们!

2007-3-30 05:39
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
terse
银牌会员





积分 2404
发帖 946
注册 2005-9-8
状态 离线
『第 19 楼』:  

干什么用的?怎么用?

2007-3-30 11:58
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
llztt1
中级用户





积分 214
发帖 94
注册 2007-1-11
状态 离线
『第 20 楼』:  

最近整理好了启动盘,结果刻好后在实机中发现了几个问题
一、支持SATA的主板很容易使PSI分析硬盘信息出错,这个悲哀的很,不知修改批处理能否改善这一问题不?
二、实机操作中DIRT也开始出错了(虚拟机正常),首先是搜索结果最后两行ERROR:CAN NOT GET COMMAND.COM‘S PSP,其次是修改过的XUSEN的搜索批处理因为DIRT原因直接中断退出,再次发现用DIRT的搜索批处理有时会卡机,停留在某个盘符死掉了。。
总上,感觉忒郁闷了

2007-3-30 12:05
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
0451lym
高级用户





积分 760
发帖 357
注册 2005-10-10
状态 离线
『第 21 楼』:  



  Quote:
Originally posted by llztt1 at 2007-3-30 12:05:
最近整理好了启动盘,结果刻好后在实机中发现了几个问题
一、支持SATA的主板很容易使PSI分析硬盘信息出错,这个悲哀的很,不知修改批处理能否改 ...

一、SATA的主板很容易使PSI分析硬盘信息出错,这个我没碰到过,我测试的是SATA硬盘正常,但是NTFS压缩分区严重出错!(SATA光驱没测试)
二、DIRT使用正常,我的是自己编写的,没有完全参考XUSEN的搜索引擎!DIRT在搜索SATA硬盘的NT分区速度正常,但是搜索老硬盘的NT分区有时间窒缓的问题。如果加载SMARTDRV 在搜索NT分区有时候会死掉!总体感觉还可以!

2007-3-30 12:39
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
0451lym
高级用户





积分 760
发帖 357
注册 2005-10-10
状态 离线
『第 22 楼』:  

DIRT搜索引擎

@ECHO OFF
REM --------------------------------------------------
IF "%ID%"=="N" goto JSA
SET CZWJ=%1>NUL
set ID=1>NUL
:BLFZ0
strings ID=add %ID%,1
for %%x in (%id%) do ECHO SET  LS=%%%%x%%>%temp%\ls.bat
CALL %temp%\ls.bat %1 %2 %3 %4
if "%LS%"=="" goto KS
:BLFZ1
ECHO %LS%|find.exe /i "/L:">NUL
if ERRORLEVEL 1 goto BLFZ2
SET ZL=%LS%>NUL
goto BLFZ0
:BLFZ2
ECHO %LS%|find.exe /i "/D:">NUL
if ERRORLEVEL 1 goto BLFZ3
SET ZD=%LS%>NUL
goto BLFZ0
:BLFZ3
ECHO %LS%|find.exe /i "/T:">NUL
if ERRORLEVEL 1 goto BLFZ4
SET CZT=%LS%>NUL
goto BLFZ0
:BLFZ4
SET WJM=%LS%>NUL
goto BLFZ0
:xs
ECHO            正在搜索→数据,请稍候......>%temp%\XS.TXT
:KS
if NOT exist %temp%\XS.TXT goto xs
GO %RAMDRIVE%\BAT
wbat cls (white on blue)
wbat fill11,16(5,50)(+white on +blue)!text13,16@%temp%\XS.TXT
for %%x in (ID xs) do SET %%x=>NUL
if "%WJM%"=="" SET WJM=%temp%\CZ.TXT>NUL
if exist %WJM% del %WJM%
ECHO %CZWJ% | find.exe /i ":">NUL
if ERRORLEVEL 1 set ID=1
if "%ID%"=="" goto DFQ
for %%x in (bfb zrl) do SET %%x=0>NUL
wbat fill17,16(1,50)(white on +black)!text17,39(1,2)"%bfb%%%"
if exist %temp%\HDD.INI strings zrl=linesize %temp%\HDD.INI
:00
for %%x in (PSI CZFQ jdt bfb ls) do MYSET %%x=>NUL
strings ls=mul %ID%,100
strings bfb=div %ls%,%zrl%
strings jdt=div %bfb%,2
MYSET ls=>NUL
strings ID=add %ID%,1
if exist %temp%\HDD.INI strings PSI=read %temp%\HDD.INI,%ID%
if "%PSI%"=="" goto js
if exist %temp%\HDD.INI STRINGS CZFQ=MID %PSI%,1,2
wbat fill16,16(1,50)(+white on brown)!text16,16(1,2)"搜索%CZFQ%\"
MYSET PSI=>NUL
:cz
if "%CZWJ%"=="*.GHO"  dirt  %CZFQ%\*.GHO %ZD% %CZT% %ZL%|find.exe /i ":">>%WJM%
if "%CZWJ%"=="*.GHO"  dirt  %CZFQ%\*.LYM %ZD% %CZT% %ZL%|find.exe /i ":">>%WJM%
if not "%CZWJ%"=="*.GHO"  dirt  %CZFQ%\%CZWJ% %ZD% %CZT% %ZL%|find.exe /i ":">>%WJM%
wbat fill17,16(1,%jdt%)(white on green)!text17,39(1,2)"%bfb%%%"
GOTO 00
:DFQ
dirt  %CZWJ% %ZD% %CZT% %ZL%|find.exe /i ":">>%WJM%
for %%x in (CZWJ ZL ZD CZT ID bfb jdt zrl) do SET %%x=
DIRT /ClearEnv
set id=1
goto JSA
:js
wbat cls (white on blue)
wbat fill11,16(5,50)(+white on +blue)!text13,16@%temp%\XS.TXT
wbat fill16,16(1,50)(+white on brown)!text16,37(1,2)"搜索完毕!"
wbat fill17,16(1,50)(white on green)!text17,39(1,2)"100%%"
for %%x in (CZWJ ZL ZD CZT bfb jdt zrl) do SET %%x=
DIRT /ClearEnv
set id=1
:JSA
IF NOT "%ID%"=="N" STRINGS /q CZWJ=READ %WJM%,%ID%
IF "%CZWJ%"=="" goto JSB
IF NOT "%ID%"=="N" strings /q ID=add %ID%,1
ATTRIB /n %CZWJ%>%temp%\lS.TXT
STRINGS /q LS=READ %temp%\lS.TXT,1
STRINGS /q SX=MID 1%LS%,7,4
STRINGS /Q LS=MID 1%LS%,4,1
SET SX=%LS%%SX%
DIR /A %CZWJ%|find.exe ":"|find.exe /v "\">%temp%\LS.TXT
STRINGS /q LS=READ %temp%\LS.TXT,1
STRINGS /q /P" LS1=PARSE %LS%"2".
IF NOT "%LS1%"=="" SET LS1=文件夹
IF NOT "%LS1%"=="" GOTO JSA0
STRINGS /Q /P" LS1=MID %LS%"13"14
IF NOT "%LS1%"=="" STRINGS /q /P" LS2=PARSE %LS1%"1",
IF NOT "%LS2%"=="" STRINGS /Q /P" LS3=PARSE %LS1%"2",
IF NOT "%LS3%"=="" STRINGS /q /P" LS4=PARSE %LS1%"3",
IF NOT "%LS4%"=="" STRINGS /q /P" LS5=PARSE %LS1%"4",
SET LS1=%LS2%%LS3%%LS4%%LS5%>NUL
:JSA0
STRINGS /q /P" LS2=MID %LS%"29"10
STRINGS /q /P" LS3=MID %LS%"41"5
for %%x in (%ls3%) do set ls3=%%x>NUL
STRINGS /q /P" LS4=LENGTH %LS3%
IF "%LS4%"=="4" SET  LS3=0%LS3%>NUL
SET LS=%LS1%>NUL
STRINGS /q LS=DIV %LS%,1024
IF "%LS%"=="0" CALC %LS1%/1024|find ".">%TEMP%\LS.TXT
WBAT CURSOR 1
IF "%LS%"=="0" STRINGS /q LS=READ %TEMP%\LS.TXT,1
FOR %%X IN (%LS%) DO SET LS=%%X>NUL
STRINGS /q LS4=LENGTH %LS%
STRINGS /q LS5=LENGTH %CZWJ%
STRINGS /q LS1=SUB 47,%LS4%,%ls5%
if "%ls%"=="" strings /q ls1=add %ls1%,4
STRINGS /q LS4=READ %RAMDRIVE%\BAT\CZ.BAT,2
STRINGS /q LS1=MID %LS4%,5,%LS1%
FOR %%X IN (LS4 LS5) DO SET %%X=>NUL
IF NOT "%LS%"=="" SET LS=%LS% KB >NUL
ECHO %CZWJ% %LS1%→ %LS%%LS2% %LS3% %SX%>>%temp%\WJ.TXT
FOR %%X IN (LS LS1 LS2 LS3 SX) DO SET %%X=>NUL
IF "%ID%"=="N" GOTO JSB
GOTO JSA
:JSB
wbat cls (white on blue)
if "%id%"=="1" CALL W.BAT fix BOX (+WHITE ON +BLUE) @BAT.INI:CZ_0
wbat cls (white on blue)
if exist %temp%\wj.txt TYPE %TEMP%\WJ.TXT>%WJM%
if "%id%"=="1" del %wjm%
FOR %%X IN (WJ.TXT LS.TXT XS.TXT LS.BAT) DO IF EXIST %TEMP%\%%X DEL %TEMP%\%%X
FOR %%X IN (wjm id CMDLINE) DO set  %%X=>NUL

2007-3-30 12:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
0451lym
高级用户





积分 760
发帖 357
注册 2005-10-10
状态 离线
『第 23 楼』:  

再有判断U盘的分区问题,可以如下解决
在AUTOEXEC命令中没跳转盘符的时候用cd>来判断是不是C盘!
不知道可行不?

2007-3-30 12:52
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
llztt1
中级用户





积分 214
发帖 94
注册 2007-1-11
状态 离线
『第 24 楼』:  

唉,我也希望不是DIRT的问题才好,明天测试一下是否是启动盘IO。SYS或COMMAND。COM的问题,也或者是GRUB加载后的问题。。

2007-3-30 12:55
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
terse
银牌会员





积分 2404
发帖 946
注册 2005-9-8
状态 离线
『第 25 楼』:  

搜索一级目录应该快点  习惯上GHO文件也一般在一级目录,怎么一个搜索这么长呢?

2007-3-30 13:05
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
0451lym
高级用户





积分 760
发帖 357
注册 2005-10-10
状态 离线
『第 26 楼』:  



  Quote:
Originally posted by terse at 2007-3-30 13:05:
搜索一级目录应该快点  习惯上GHO文件也一般在一级目录,怎么一个搜索这么长呢?

1、要判断是全盘搜索还是单分区搜索!
2、不只能搜索一级目录,要的是真正的全方位搜索!
3、要知道结果,并且排序!
呵呵,这个我都精简了好多次了,改动了好多次了!

2007-3-30 13:10
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
terse
银牌会员





积分 2404
发帖 946
注册 2005-9-8
状态 离线
『第 27 楼』:  

那怎么不用lmod试试可以一次把X:\后面的分隔出  不是也方便?再用WBAT处理不是也好?

2007-3-30 13:32
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
0451lym
高级用户





积分 760
发帖 357
注册 2005-10-10
状态 离线
『第 28 楼』:  

又弄了好几天终于又搞出点名堂了!
XUSEN的和我原先做的都是30-50秒进入系统
今天我加了个小命令,结果10-13秒进入系统,而且搜索飞快!

呵呵,真是奇迹呀!

2007-4-2 12:42
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
llztt1
中级用户





积分 214
发帖 94
注册 2007-1-11
状态 离线
『第 29 楼』:  

速度慢主要耗在PSI上了,只要用PSI分析硬盘信息的话就快不了,除非换掉他
我也放弃XUSEN的老版搜索批处理了,去掉没用的搜索百分比显示,搜索速度是很快的

2007-4-3 02:14
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
0451lym
高级用户





积分 760
发帖 357
注册 2005-10-10
状态 离线
『第 30 楼』:  

我加了个缓存驱动QCACHE.SYS结果速度就飞快(千万不要用SMARTDRV,因为DIRT会死掉的!)


14秒进系统:

DEVICE=\SYS\MEM\HIMEM.SYS /TESTMEM:OFF
DEVICEHIGH=\SYS\MEM\EMM386.exe noems
DEVICEHIGH=\SYS\MEM\QSCACHE.SYS /F /S7



9秒进系统:

DEVICE=\SYS\MEM\HIMEM.SYS /TESTMEM:OFF
DEVICE=\SYS\MEM\UMBPCI.SYS /S
DEVICEHIGH=\SYS\MEM\QCACHE.SYS /L /S5

2007-4-3 02:28
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: