中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-26 02:07
47,812 主题排行 / 349,910 发帖 / 今日 0 篇 / 48,264 会员排行
DOS批处理 & 脚本技术(批处理室) » [部分已结]有否类似 findcd 的 U盘盘符识别程序 findusb ?
可打印版本  6,973 / 26
第1楼 hxj 发表于 2006-04-04 15:57
中级用户 发帖 66 积分 377
[部分已结]有否类似 findcd 的 U盘盘符识别程序 findusb ?
有否类似 findcd 的 U盘盘符识别程序 findusb ?

为了在批处理中能搜索 U盘盘符,有否像 光盘盘符识别程序 findcd.exe这样的U盘盘符识别程序 findusb.exe ?
如没有现成的程序,那位高手能编写具有这一功能的批处理也行 !

[ Last edited by hxj on 2006-4-15 at 04:49 ]
第2楼 3742668 发表于 2006-04-04 17:30
荣誉版主 发帖 718 积分 2,013

看看是不是类似的效果?如果把"可移动磁盘"改为"CD-ROM 磁盘"则可以返回当前的光驱盘符。
其他事项见我的签名。
第3楼 Climbing 发表于 2006-04-04 22:24
铂金会员 发帖 2,753 积分 6,962 来自 河北保定
楼上的,顺便请教一下,如何用wmic在另一台机器上执行一条命令?
第4楼 3742668 发表于 2006-04-04 23:22
荣誉版主 发帖 718 积分 2,013
wmic /node:对方IP /user:username /password:yourpassword
在SP2环境中测试能连接上,但是似乎权限不够,亦或是对方未开启RPC。也许是用的空密码登陆的缘故吧,没条件,也懒得测试找原因了。
第5楼 hxj 发表于 2006-04-05 01:50
中级用户 发帖 66 积分 377
感谢3742668:
你写的批处理能达到目的!
你干脆把它编成一个应用程序findusb.exe ,应当还是很有实用价值的!
第6楼 hxj 发表于 2006-04-05 04:11
中级用户 发帖 66 积分 377
再向3742668求教:

我把“FreeSpace”省去,只显示了U盘的盘符 “DeviceID”,但怎样才能把 显示的 “DeviceID”转变成批处理中能用的环境变量?
第7楼 3742668 发表于 2006-04-05 10:00
荣誉版主 发帖 718 积分 2,013
用for包起来吧。。

看看中不中,未经测试。
第8楼 hxj 发表于 2006-04-05 10:37
中级用户 发帖 66 积分 377
Originally posted by 3742668 at 2006-4-5 10:00 AM:
用for包起来吧。。

看看中不中..


测试了,结果盘符不对,将我要解到U盘(I:)的文件解到当前盘(G:)去了。
之前,我自己胡编了一个到是能行,但总觉得不好,请你指教

usb.bat :

@echo off
path %SystemRoot%\system32\wbem;%SystemRoot%\system32\
wmic logicaldisk where Description="可移动磁盘" get DeviceID | find /v "DeviceID">a.txt
for /F "tokens=1" %%I in (a.txt) DO set USB=%%I
del a.txt
dosimg KV.img %USB%\ /s>nul
exit

但上面的批处理单独使用可以,用我的主批处理用call 调用就出错,不知为什么

最后用 start /wait /min usb.bat 到是成功了。我是DOS菜鸟,这样的语句是瞎凑的,我自己也搞不懂!
第9楼 3742668 发表于 2006-04-05 10:49
荣誉版主 发帖 718 积分 2,013
那这句呢?

也许你的U盘的类型不是2吧,我的光盘类型为3,U盘类型为2,现在不在手边,所以无法测试。你可以把前面的那句的DriveType="2"分别改成1,2,3,4,5等等测试了看看。
你的那个批处理可以把主批处理也贴上来,顺便说明一下环境包括目录。
第10楼 hxj 发表于 2006-04-05 11:00
中级用户 发帖 66 积分 377
:3制作江民DOS杀毒闪盘
REM 制作江民 DOS 杀毒闪盘
path %Programfiles%\winrar
start /wait /min winrar e -p88888888 KV.pak kv.iso dosimg.exe -o+
start /wait /min winrar e kv.iso ezboot\kv.img -o+
cls
echo.
echo.
echo.
echo.
echo Now laoding databank into U disk, please wait......
start /wait /min usb.bat
del/q a.txt
del/q kv.i*
del/q d*.exe
GOTO BACKTOMENU

WinXP系统,当前目录 g:\dosav\kv\

你的比较简洁,我继续试!
第11楼 hxj 发表于 2006-04-05 11:19
中级用户 发帖 66 积分 377
好了!用你第一个批处理,PATH中加入%SystemRoot%\system32\;%SystemRoot%\system32\wbem就成功了!

非常感谢你这位高手的指教,受益匪浅!!
第12楼 hxj 发表于 2006-04-15 04:47
中级用户 发帖 66 积分 377
此问题本来已解决,但现在碰到需要DOS7.1下识别U盘盘符问题,看来3742668的方法只能手在Windows下,在纯DOS下有否办法 ?

[ Last edited by hxj on 2006-4-15 at 04:48 ]
第13楼 buddiyar 发表于 2006-07-21 21:33
初级用户 发帖 75 积分 160
wmic logicaldisk where Description="可移动磁盘" get DeviceID,FreeSpace | find /v "DeviceID"

这个wmic是内部命令么
怎么以前都没听说过啊
而且在我的机子上用wmic /? 也搜不到相关帮助信息哦
第14楼 willsort 发表于 2006-07-21 21:56
元老会员 发帖 1,512 积分 4,432
Re buddiyar:

wmic 显然不是内部命令,但它是WinXP/03的缺省安装组件,首次运行wmic时,会提示进行安装以完成配置,以后可以在cmd或批处理中直接使用。请参考:

WMI 命令行
http://www.cn-dos.net/forum/viewthread.php?tid=19738#pid115977
第15楼 gmy 发表于 2006-09-11 21:06
版主 发帖 392 积分 1,113
“可移动磁盘”的字符判断没有考虑到USB-HDD(本地硬盘)的情况。
1 2  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023