什麼會導致移動命令返回“0 個檔案”?

什麼會導致移動命令返回“0 個檔案”?

我有一個批次文件,它使用移動命令從另一台電腦提取文件:

move \\otherpc\source\directory\*.bin c:\destination\

通常,如果確實沒有與模式匹配的文件,則 move 將列印:

存在重複的檔案名,或找不到該檔案。

如果無法找到/到達另一台計算機,它將列印:

找不到網路路徑。

但我有一個返回的移動命令:

移動了 0 個檔案。

筆記:

  • 存在與模式匹配的文件
  • 目標資料夾確實存在
  • 使用者對兩個目錄(來源目錄和目標目錄)都具有讀寫權限
  • 所有文件都不是唯讀的。
  • 目標驅動器未滿。

我還缺什麼?什麼會導致舉動出現這樣的行為?

答案1

我不太確定是什麼導致了您的問題,但我確實知道潛在的解決方案: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).

該命令與您的命令等效move

robocopy \\otherpc\source\directory c:\destination *.bin /mov

如果這樣有效,別擔心為什麼move不行。如果沒有,這裡有一些其他潛在的問題和解決方法:

  • 來源檔案上有一個開啟的檔案句柄。

  • 來源檔案已損壞。

  • 來源檔案的名稱不正確。

  • 另一台電腦的作業系統和/或檔案系統與 Windows 不完全相容。

  • 你總是可以先嘗試copydel取得成功。我一直不明白為什麼,但這有時行得通,但move不起作用...

相關內容