Robocopy «неверный параметр» для имен файлов, начинающихся с «-» (знак минус) - PullRequest
0 голосов
/ 21 ноября 2018

Я использую robocopy для резервного копирования папок и отдельных файлов через командный файл.Это прекрасно работает для всех папок и почти для всех файлов, но не для файлов, имя которых начинается с «-» (минус).

Моя ОС: немецкая Windows 7, 64-битная.(Я не знаю, имеет ли это значение.)

Мой тестовый пакетный файл делает это:

SET fileName=-Test.rar
robocopy "folder 1" "folder 2" "%fileName%"
ECHO Errorlevel: %Errorlevel%

Где %fileName% указано, потому что имя файла можеттакже содержат пробелы.

В результате возникает ОШИБКА: Неверный параметр .

-------------------------------------------------------------------------------
   ROBOCOPY     ::     Robustes Dateikopieren für Windows
-------------------------------------------------------------------------------

  Gestartet: Wed Nov 21 15:42:47 2018

   Quelle - E:\BackupThisFile\folder 1\
     Ziel - E:\BackupThisFile\folder 2\

    Dateien :
  Optionen: /COPY:DAT /R:1000000 /W:30

------------------------------------------------------------------------------

FEHLER: Ungültiger Parameter #3 : "-Test.rar"
[...]
Errorlevel: 16

Протестированные версии "robocopy.exe":

  • XP010 (Windows XP?)
  • XP026 (Windows 2000?)
  • XP027 Win7 32 бит
  • XP027 Win7 64 бит

Это всегда приводило к одному и тому же сообщению об ошибке или только к эквивалентному коду ошибки 16.

Протестированный вариант команды:

Тогда я попробовалразные варианты команды.Только 1 изменение (дополнительные кавычки) выглядело отдаленно многообещающе:

robocopy "folder 1" "folder 2" \""%fileName%""

Но это тоже не сработало:

-------------------------------------------------------------------------------
   ROBOCOPY     ::     Robustes Dateikopieren für Windows
-------------------------------------------------------------------------------

  Gestartet: Wed Nov 21 15:43:00 2018

   Quelle : E:\BackupThisFile\folder 1\
     Ziel : E:\BackupThisFile\folder 2\

    Dateien : "-Test.rar"

  Optionen: /COPY:DAT /R:1000000 /W:30

------------------------------------------------------------------------------

                           0    E:\BackupThisFile\folder 1\

------------------------------------------------------------------------------

           Insgesamt   KopiertÜbersprungenKeine Übereinstimmung    FEHLER    Extras
Verzeich.:         1         0         1         0         0         0
  Dateien:         0         0         0         0         0         0
    Bytes:         0         0         0         0         0         0
   Zeiten:   0:00:00   0:00:00                       0:00:00   0:00:00

Ничего не было скопировано, хотя файлПараметр name был как бы распознан.

Я думаю, что кавычки в значении параметра также неверны.

У кого-нибудь есть идея?

...