找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 30524|回复: 7

[其他] 为啥批处理命令 for / d 对远程路径不支持?

[复制链接]
发表于 2014-6-4 18:01:32 | 显示全部楼层 |阅读模式
请教一下
如果 for /d %%i in (c:\*) do (echo %%i) 可以执行成功
如果 for /d %%i in (\\10.2.48.166\*) do (echo %%i)则不行
为啥?
发表于 2014-6-4 18:17:07 | 显示全部楼层
  1. for /f "delims=" %%a in ('dir \\10.2.48.166\*') do echo %%i
复制代码
发表于 2014-6-4 22:50:35 | 显示全部楼层
或者试试网络磁盘映射。
 楼主| 发表于 2014-6-5 10:13:09 | 显示全部楼层
回复 2# CrLf


二楼你害死我了
for /d %%i in (c:\*) do (echo %%i)---这一句只列出当前的目录
for /f "delims=" %%a in ('dir \\10.2.48.166\*') do echo %%i---这一句要过滤不说,主要是还包含当前目录和上一级的目录
我的do中包含一个删除操作,本意是希望删除指定目录下的符合条件的文件,没想到删除了当前目录及上一级目录!
发表于 2014-6-5 10:23:23 | 显示全部楼层
回复 4# 吕麟


    能否把2楼代码的执行结果发出来看看
 楼主| 发表于 2014-6-5 14:27:31 | 显示全部楼层
回复 5# Batcher
\\10.2.48.201\everyone\lvy下有两个目录'1'和'2',这是2楼执行的结果
驱动器 \\10.2.48.201\everyone 中的卷是 DATAPART1
卷的序列号是 7E69-BAF0
\\10.2.48.201\everyone\lvy 的目录
2014-06-05  14:18    <DIR>          .
2014-06-05  14:18    <DIR>          ..
2014-06-05  14:18    <DIR>          1
2014-06-05  14:18    <DIR>          2
               0 个文件              0 字节
               4 个目录 157,231,357,952 可用字节
------------------------------------------------------
E:\批处理下有两个目录'1'和'2',这是1楼执行的结果
E:\批处理\1
E:\批处理\2
------------------------------------------------------
一个返回了4个目录,一个返回了2个目录
 楼主| 发表于 2014-6-5 15:36:57 | 显示全部楼层
本帖最后由 吕麟 于 2014-6-5 15:38 编辑

好吧,我知道了 应该用
for /f "delims=" %%i in ('dir /ad /b \\10.2.48.166\*') do echo %%i
可是文件已经被删了啊!
发表于 2014-6-5 22:10:56 | 显示全部楼层
...........
好吧确实漏了 /b,但像删除移动格式化这类危险的动作应该先测试再执行啊
只好用恢复工具尝试恢复了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-21 04:18 , Processed in 0.030689 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表