Зеркалирование выбранных папок с помощью Robocopy

Обсуждение вопросов автоматизации Total Commander с помощью сторонних программ и скриптовых технологий.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

Iori
Сообщения: 552
Зарегистрирован: Ср апр 25, 2012 20:33

Сообщение Iori »

Flasher писал(а):Если мы выбираем файл для копирования, то при чём тут зеркалирование папки?
Ну я же говорю что открыты две папки. Одна в левой другая в правой панели. Выбираем папки и файлы которые нужно зеркалить, а дальше всё делает robocopy.
Flasher писал(а):Ты хочешь простого копирования с заменой, я правильно понял?
Нет. Меня интересует кнопка которая бы зеркалировала выбранные папки и файлы в противоположенную панель.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Iori
Мы говорим только о добавке в кнопку, а не отдельном решении для файлов. Нет понятия зеркалирования файлов (удалять в получателе нечего по сути). Есть копирование с заменой. Короче:

Код: Выделить всё

TOTALCMD#BAR#DATA
%ComSpec% /c echo off&for %# in
(%S) do if exist "%%~#\" (robocopy "%P%%~#" "%T%%~#" /MIR /R:1 /W:1 /NJH /NJS /NDL /NFL) else robocopy "%P\" "%T\" %%# /COPY:DATSO /R:1 /W:1 /NJH /NJS /NDL /NFL
shell32.dll,132
Зеркалировать выбранное в другую панель

1
Последний раз редактировалось Flasher Пн ноя 27, 2017 16:08, всего редактировалось 3 раза.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Iori
Сообщения: 552
Зарегистрирован: Ср апр 25, 2012 20:33

Сообщение Iori »

Flasher писал(а):Нет понятия зеркалирования файлов (удалять в получателе нечего по сути).
Я просто думал что если уже существует файл в месте назначения, который по дате и размеру совпадает с тем который в источнике, то robocopy его пропустит. Те файлы которые старее или другого размера он перезапишет без вопросов.

Спасибо за кнопку, но не работает копирование файлов. Папки зеркалит, файлы не копирует.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Iori писал(а):... то robocopy его пропустит. Те файлы которые старее или другого размера он перезапишет без вопросов.
Так оно и происходит.
Iori писал(а):файлы не копирует.
Дай условия для одного файла.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Iori
Сообщения: 552
Зарегистрирован: Ср апр 25, 2012 20:33

Сообщение Iori »

Flasher писал(а):Так оно и происходит.
То есть через /copyall ?
Я думал он так делает когда только зеркалит.
Flasher писал(а):Дай условия для одного файла.
Объясни, я не понимаю.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Iori писал(а):То есть через /copyall ?
Угу.
Iori писал(а):Объясни, я не понимаю.
Пути источника/получателя, имя.
Кнопку нигде не менял?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
ZZZAlexZZZ
Сообщения: 68
Зарегистрирован: Сб мар 08, 2014 22:25

Сообщение ZZZAlexZZZ »

Flasher
1. У меня ругается на /copyall
"ОШИБКА: У вас нет прав на управление аудитом.
***** Требуется для копирования сведений по аудиту (/COPY:U или /COPYALL)."

2. Без /copyall — не копирует файл ±1.xls
Может из-за этого — \\ ?
D:\17-11-27>if EXIST "+1.xls\" (robocopy "D:\17-11-27\+1.xls\" "D:\17-11-27\17-11-27\+1.xls\" /MIR /R:1 /W:1 /NP /NJH /N
JS /NDL /NFL ) else robocopy "D:\17-11-27\\" "D:\17-11-27\17-11-27\\" "+1.xls" /copyall /R:1 /W:1 /NP /NJH /NJS /NDL /N
FL & pause
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

ZZZAlexZZZ
Нет. Это специально сделано. А если заменить на /COPY:DATSO ?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
ZZZAlexZZZ
Сообщения: 68
Зарегистрирован: Сб мар 08, 2014 22:25

Сообщение ZZZAlexZZZ »

Flasher
при замене /copyall на /COPY:DATSO скопировал выбранные папки и файлы, за исключением содержащих уникод - например:
d:\17-11- 27\±1.xls
d:\17-11- 27\ž1 - копия.xls
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

ZZZAlexZZZ
Исправил.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
ZZZAlexZZZ
Сообщения: 68
Зарегистрирован: Сб мар 08, 2014 22:25

Сообщение ZZZAlexZZZ »

Flasher
С новой версией проблемные файлы скопировались. Великолепно! :D
Iori
Сообщения: 552
Зарегистрирован: Ср апр 25, 2012 20:33

Сообщение Iori »

Flasher
Спасибо! Кнопка работает отлично. :D

PS: Со своим путём к robocopy, не работает. Не понимаю почему.

Код: Выделить всё

TOTALCMD#BAR#DATA
%ComSpec% /c echo off&for %# in
(%S) do if exist "%%~#\" ("%%COMMANDER_PATH%%\Utilities\Scripts\robocopy.exe" "%P%%~#" "%T%%~#" /MIR /R:1 /W:1 /TEE /V) else "%%COMMANDER_PATH%%\Utilities\Scripts\robocopy.exe" "%P\" "%T\" %%# /COPY:DATSO /R:1 /W:1 /TEE /V
shell32.dll,132
Mirror with RoboCopy


-1
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Iori
В мою кнопку %COMMANDER_PATH%\Utilities\Scripts\ в путь запуска вставь. Не понимаю, зачем ты переписал ключи. Это же замедлит процесс.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Iori
Сообщения: 552
Зарегистрирован: Ср апр 25, 2012 20:33

Сообщение Iori »

Flasher писал(а):В мою кнопку %COMMANDER_PATH%\Utilities\Scripts\ в путь запуска вставь.
Спасибо.
Flasher писал(а): Не понимаю, зачем ты переписал ключи. Это же замедлит процесс.
Поменял когда тестировал. Надо было посмотреть как robocopy справляется с задачей. А что, так сильно замедлит процесс?
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Iori
И много ты там увидел при наличи echo off? :D
Не сильно, но немного замедлит.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Ответить