[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

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

请教一下
如果 for /d %%i in (c:\*) do (echo %%i) 可以执行成功
如果 for /d %%i in (\\10.2.48.166\*) do (echo %%i)则不行
为啥?

  1. for /f "delims=" %%a in ('dir \\10.2.48.166\*') do echo %%i
复制代码

TOP

或者试试网络磁盘映射。

TOP

回复 2# CrLf


二楼你害死我了
for /d %%i in (c:\*) do (echo %%i)---这一句只列出当前的目录
for /f "delims=" %%a in ('dir \\10.2.48.166\*') do echo %%i---这一句要过滤不说,主要是还包含当前目录和上一级的目录
我的do中包含一个删除操作,本意是希望删除指定目录下的符合条件的文件,没想到删除了当前目录及上一级目录!

TOP

回复 4# 吕麟


    能否把2楼代码的执行结果发出来看看
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 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个目录

TOP

本帖最后由 吕麟 于 2014-6-5 15:38 编辑

好吧,我知道了 应该用
for /f "delims=" %%i in ('dir /ad /b \\10.2.48.166\*') do echo %%i
可是文件已经被删了啊!

TOP

...........
好吧确实漏了 /b,但像删除移动格式化这类危险的动作应该先测试再执行啊
只好用恢复工具尝试恢复了

TOP

返回列表