中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-19 09:51
47,814 主题排行 / 349,908 发帖 / 今日 0 篇 / 48,259 会员排行
DOS疑难解答 & 问题讨论 (解答室) » 关于|的使用
可打印版本  875 / 8
第1楼 skyforever 发表于 2007-10-16 07:28
初级用户 发帖 13 积分 34
关于|的使用
环境 : msdos7.1
命令: for %%a in (c d e f) do vol %%a: | find /i "sys"
目的:查找磁盘名称包含sys的盘
==========
现在出现一个问题是:循环只执行 vol %%a: ,而没把这个结果传给find来执行find /i "sys"
===============
在xp的cmd下,这个又正常。
在msdos7.1下,如果单句执行 vol c: | find /i "sys" ,这个又是正常。
======
哪个知道在msdos7.1下面如何解决?
第2楼 xiandan703 发表于 2007-10-16 11:17
初级用户 发帖 32 积分 62
请教 for %%a in (c d e f) do vol %%a中%%a的用法
第3楼 greenworld 发表于 2007-10-16 11:57
初级用户 发帖 45 积分 86
for %%a in (c d e f) do (vol %%a:^|find /i "sys")

不知道是否可以??偶也是个菜鸟.....呵呵
第4楼 fastslz 发表于 2007-10-16 13:00
铂金会员 发帖 2,315 积分 5,493 来自 上海
是卷标不完整,XP下重命名的卷标,在DOS下无法正确显示,即使XP格式化生成的卷标也不一定正确显示,而PQ生成的卷标是完整的,所以这个命令不具备通用性。
第5楼 不得不爱 发表于 2007-10-16 13:51
超级版主 发帖 2,044 积分 5,310 来自 四川南充
那是因为纯DOS下的for命令1行只执行1个命令
第6楼 skyforever 发表于 2007-10-16 17:09
初级用户 发帖 13 积分 34
Originally posted by 不得不爱 at 2007-10-16 01:51 PM:
那是因为纯DOS下的for命令1行只执行1个命令

版主有什么办法实现这个命令么?
第7楼 不得不爱 发表于 2007-10-16 17:38
超级版主 发帖 2,044 积分 5,310 来自 四川南充
vol c: | find /i "sys"
vol d: | find /i "sys"
vol e: | find /i "sys"
vol f: | find /i "sys"
你find /i "sys"干什么啊
第8楼 skyforever 发表于 2007-10-16 18:02
初级用户 发帖 13 积分 34
for %%a in (c d e f) do vol %%a: | find /i "ibm_service"

===========
通过这个找出盘符标识为ibm_service,把这个盘符保存为变量,
然后xcopy一键还原的文件。
总的来说是制作一键还原。
第9楼 hxwxyz 发表于 2007-10-16 19:35
中级用户 发帖 123 积分 245
学习了
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023