6

Я не могу использовать эту команду в win 7, когда хочу переместить каталог, если место назначения существует. В нем говорится, что доступ запрещен. Почему это происходит? Это работало в XP.

move /y "%1" c:\mydir\

Я могу использовать robocopy, но тогда он будет перемещать только содержимое папки. не папка полностью.

robocopy "%1" c:\mydir /E /IS /MOVE

Как я могу решить эту проблему?

4 ответа4

4

Наконец-то .. вот решение .. Спасибо за помощь, ребята :)

SET mydir=C:\mydir
IF EXIST "%mydir%\%~n1\" (
  ROBOCOPY %1 "%mydir%\%~n1" /E /IS /MOVE
) ELSE (
  MOVE /Y %1 "%mydir%\"
)
4

Пытаться:

IF EXIST "c:\mydir" (
     robocopy "%1" c:\mydir /E /IS /MOVE 
     ) ELSE (
     move /y "%1" c:\mydir 
     )

Это проверит, существует ли папка, и переместит содержимое, если папка существует, и если папка не выходит, то она переместит вашу папку. Если вам по-прежнему отказано в доступе, вам, вероятно, нужно получить права администратора.

2

Если вы получаете сообщения об ошибках ACCESS DENIED при попытке переместить папку, либо

  1. У вас нет необходимых прав для перемещения папки
  2. У вас нет необходимых прав для перемещения одного или нескольких файлов в папке
  3. Один или несколько файлов доступны системе / приложению
  4. Один или несколько файлов защищены от удаления.

Проверьте все эти возможности.

0

Я хромая и не понимаю точно, что ответы здесь делают под капотом, поэтому я придумал эту копию / вставку doozy

SET src=C:\dev
SET dest=D:\dev
IF EXIST %dest% (ROBOCOPY %src% %dest% /E /IS /MOVE) ELSE (MOVE /Y %src% %dest%)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .