无忧启动论坛

标题: 如何用DOS命令查找出指定文件所在的盘符,并支持长文件名 [打印本页]

作者: qj_tzy    时间: 2011-7-1 16:59
标题: 如何用DOS命令查找出指定文件所在的盘符,并支持长文件名
用MSDOS的映像文件启动后,若有一文件如\dirxxx\filename,不知其在哪一个盘符,现想在批处理命令中先找出其盘符,如为x:,再在批处理中对x:\dirxxx\filename进行复制、改名或删除等操作。

且想支持长文件名,如何进行,诚请各位网友指教。



[ 本帖最后由 qj_tzy 于 2011-7-1 20:04 编辑 ]
作者: dos时代菜鸟    时间: 2011-7-1 18:57
msdos 不能识别 ntfs 分区的。就算 加 ntfs 驱动,盘符顺序 也可能与 win 下不一致。

不知道 你要这个功能做什么?

我的 dos工具箱 ,可以搜索 出整个硬盘 各分区的 gho ,不知道你是不是要者功能。
作者: lindafu    时间: 2011-7-1 19:30
@echo off
for %%b in (c d e f g h i j k l m n o p q r s t u v w x y z) do if exist %%b:\123\123.txt set drv=%%b:
echo 盘符为 %drv%
copy %drv%\123\123.txt c:\
pause
作者: qj_tzy    时间: 2011-7-1 19:35
标题: 回复 #2 dos时代菜鸟 的帖子
谢谢,这点我知道。

我就是想通过启动一个MSDOS镜像文件,来自动完成对某一特定目录下的特定文件(不知在哪一个盘符,为NTFS分区)的复制、改名或删除操作的功能。
作者: qj_tzy    时间: 2011-7-1 19:38
标题: 回复 #3 lindafu 的帖子
这正是我需要的,非常感谢您的指点!

如何支持长文件名,还请各位指点。

[ 本帖最后由 qj_tzy 于 2011-7-1 20:05 编辑 ]
作者: lindafu    时间: 2011-7-1 21:58
标题: 回复 #5 qj_tzy 的帖子
长文件名支持,是要加载长文件名驱动的,如下附件就是你要的,在DOS下运行doslfn就可以了

LFN.rar (26.03 KB, 下载次数: 136)
作者: 于山    时间: 2011-7-2 07:07
原帖由 lindafu 于 2011-7-1 21:58 发表
长文件名支持,是要加载长文件名驱动的,如下附件就是你要的,在DOS下运行doslfn就可以了

125212

dos下搜索的难点:在于ntfs分区的中文目录下的文件!
作者: lindafu    时间: 2011-7-2 10:56
标题: 回复 #7 2010yg 的帖子
本人回答的都是LZ问的问题,好象回答中无提过“搜索”两个字,再说你说的“dos下搜索的难点”那是你自己的难点,并不代表他人也是个难点,你还是深入研究研究一下DOS吧
作者: 于山    时间: 2011-7-2 11:17
原帖由 lindafu 于 2011-7-2 10:56 发表
本人回答的都是LZ问的问题,好象回答中无提过“搜索”两个字,再说你说的“dos下搜索的难点”那是你自己的难点,并不代表他人也是个难点,你还是深入研究研究一下DOS吧

向版主学习了!......................
作者: qj_tzy    时间: 2011-7-2 12:29
标题: 回复 #6 lindafu 的帖子
已下载,我试试,谢谢

不清楚的,再向您请教。
作者: qj_tzy    时间: 2011-7-2 16:45
标题: 回复 #6 lindafu 的帖子
我将下载的两个文件加入映像文件中后,在autoexec.bat中用doslfn加了多个参数均未试成功。

我想实现:
for %%b in (c d e f g h i j k l m n o p q r s t u v w x y z) do if exist %%b:\123xxxxxxx\123yyyyyyyyy.txt set drv=%%b:
copy %drv%\123xxxxxxx\123yyyyyyyyy.txt %drv%\123xxxxxxx\456yyyyyyyyy.txt

如何在autoexec.bat中加doslfn的参数,以实现以上功能。
作者: lindafu    时间: 2011-7-2 18:14
标题: 回复 #11 qj_tzy 的帖子
直接加载doslfn就可以了,如下图


作者: qj_tzy    时间: 2011-7-3 12:51
标题: 回复 #12 lindafu 的帖子
谢谢,我再试试。
作者: qj_tzy    时间: 2011-7-3 17:19
标题: 回复 #12 lindafu 的帖子
您在#12楼贴出的结果,是否在NTFS分区试验的。

我需要操作的长文件名是在NTFS分区,我按一网友的提示,在autoexec.bat中是如此加载的
ntfs4dos command /P /F /E:2000 /k autoexec.bat
doslfn >nul

但未能对NTFS分区的长文件名进行操作,还望请多指点指点。
作者: lindafu    时间: 2011-7-3 19:42
标题: 回复 #14 qj_tzy 的帖子
doslfn对FAT32分区有效,NTFS驱动(如:ndos -lfn -mountall -cp:936)本身就支持长文件名,但它们好象相互又不通用,这些你自己试了
作者: 于山    时间: 2011-7-3 21:19
原帖由 qj_tzy 于 2011-7-3 17:19 发表
您在#12楼贴出的结果,是否在NTFS分区试验的。

我需要操作的长文件名是在NTFS分区,我按一网友的提示,在autoexec.bat中是如此加载的
ntfs4dos command /P /F /E:2000 /k autoexec.bat
doslfn >nul

但未 ...

我建议你使用的NTFSPRO版本进行搜索,它搜索功能强!
我搜索出在ntfs分区里的长文件截图:

仅供参考!

[ 本帖最后由 2010yg 于 2011-7-3 21:46 编辑 ]
作者: qj_tzy    时间: 2011-7-3 22:08
标题: 回复 #lindafu (深山老林) 、#16 2010yg 的帖子
感谢两位的热心指点
我再试试
作者: 于山    时间: 2011-7-4 06:57
假如,你所指定的文件存在于多个分区之中!
用这条命令搜索(对不起,我习惯把查找说成搜索)只能显示最后找到的那个盘符噢!


[ 本帖最后由 2010yg 于 2011-7-4 07:00 编辑 ]
作者: 2010rivch    时间: 2011-8-1 01:08
标题: 回复 #15 lindafu 的帖子
不知道版主有DOS或者GRUB下 解压长文件名的方法吗?




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3