我有一个批处理文件,它使用移动命令从另一台计算机中提取文件:
move \\otherpc\source\directory\*.bin c:\destination\
Run Code Online (Sandbox Code Playgroud)
通常,如果确实没有与模式匹配的文件,则将打印:
存在重复的文件名,或找不到文件。
如果无法找到/访问另一台计算机,它将打印:
找不到网络路径。
但是我有一个返回的移动命令:
移动了 0 个文件。
笔记:
我还缺少什么?什么会导致这样的举动?
我不太确定是什么导致了您的问题,但我确实知道潜在的解决方案:robocopy
move自 DOS 时代以来就已经存在,并且从那时起就没有太大变化。与此同时xcopy,它被新的和改进的robocopy. 后者更加通用,并且在某些情况下错误更少(网络就是其中之一)。
从robocopy /?:
Usage :: ROBOCOPY source destination [file [file]...] [options]
source :: Source Directory (drive:\path or \\server\share\path).
destination :: Destination Dir (drive:\path or \\server\share\path).
file :: File(s) to copy (names/wildcards: default is "*.*").
...
/MOV :: MOVe files (delete from source after copying).
/MOVE :: MOVE files AND dirs (delete from source after copying).
Run Code Online (Sandbox Code Playgroud)
该命令与您的命令等效move:
robocopy \\otherpc\source\directory c:\destination *.bin /mov
Run Code Online (Sandbox Code Playgroud)
如果这有效,别担心为什么move不行。如果没有,这里有一些其他潜在的问题和解决方法:
源文件上有一个打开的文件句柄。
源文件已损坏。
源文件的名称不正确。
另一台电脑的操作系统和/或文件系统与 Windows 不完全兼容。
你总是可以先尝试copy并del取得成功。我一直不明白为什么,但这有时行得通,但move不起作用......
| 归档时间: |
|
| 查看次数: |
3326 次 |
| 最近记录: |