Что может привести к тому, что команда перемещения вернет «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.

  • Вы всегда можете попробовать copyсначала и delна успех. Я так и не смог понять почему, но это иногда работает, когда moveне работает...

Связанный контент