Ребят, большая благодарность за помощь, в особенности Elven и Megaloman!
Megaloman, отдельный респект, за постановку задачи и варианты решения!
1. При использовании данного варианта:
Цитата megaloman:
Вариант решения - к имени файлов добавляются имена серверов »
|
Код:

@Echo On
Call :Together "2020-10-05.gw.uniroll.log"
Exit /B
:Together
Set "AllComp=127.0.0.1\c$\Test\1 127.0.0.1\c$\Test\2"
Set "LogFolder=Log"
Set "BoxOut=d:\Backup\files"
If Not Exist "%BoxOut%\%~n1" (
Md "%BoxOut%\%~n1" ||(Echo Folder "%BoxOut%\%~n1" not created &Pause &Exit /B 1)
)
>nul 2>&1 (For %%c In (%AllComp%) Do (
Copy "\\%%c\%LogFolder%\%~1" "%BoxOut%\%~n1\%~n1_%%c%~x1")
)>> d:\Backup\log\1.txt
)
Exit /B
После исполнения кода получается:
d:\Backup>(Copy "\\127.0.0.1\c$\Test\1\Log\2020-10-05.gw.uniroll.log" "d:\Backup\files\2020-10-05.gw.uniroll\2020-10-05.gw.uniroll_127.0.0.1\c$\Test\1.log" )
Скопировано файлов: 0.
d:\Backup>(Copy "\\127.0.0.1\c$\Test\2\Log\2020-10-05.gw.uniroll.log" "d:\Backup\files\2020-10-05.gw.uniroll\2020-10-05.gw.uniroll_127.0.0.1\c$\Test\2.log" )
Скопировано файлов: 0.
При использовании кода:
Код:

@Echo on
Call :Together "2020-10-05.gw.uniroll.log"
Exit /B
:Together
Set "AllComp=127.0.0.1\c$\Test\1 127.0.0.1\c$\Test\2"
Set "LogFolder=log"
Set "BoxOut=d:\Backup\files"
If Not Exist "%BoxOut%\%~n1" (
Md "%BoxOut%\%~n1" ||(Echo Folder "%BoxOut%\%~n1" not created &Pause &Exit /B 1)
)
Set /A N=1000
>nul 2>&1 (For %%c In (%AllComp%) Do (
Set /A N+=1
Call Copy "\\%%c\%LogFolder%\%~1" "%BoxOut%\%~n1\%~n1_%%N:~1%%%~x1")
)>> d:\Backup\log\1.txt
)
Exit /B
Все копируется нормально:
d:\Backup>(
Set /A N+=1
Call Copy "\\127.0.0.1\c$\Test\1\log\2020-10-05.gw.uniroll.log" "d:\Backup\files\2020-10-05.gw.uniroll\2020-10-05.gw.uniroll_%N:~1%.log"
)
Скопировано файлов: 1.
d:\Backup>(
Set /A N+=1
Call Copy "\\127.0.0.1\c$\Test\2\log\2020-10-05.gw.uniroll.log" "d:\Backup\files\2020-10-05.gw.uniroll\2020-10-05.gw.uniroll_%N:~1%.log"
)
Скопировано файлов: 1.
Но ув. Megaloman меня не совсем верно понял, в связи с чем возникли небольшие трудности (недочеты), т.к. я не указал что:
Цитата:
На каждом сервере в указанной папке ежедневно создаются файлы имя.log, где хранятся лог-файлы за несколько дней,
например:
\\Server1\Log\2020-10-22.gw.uniroll.log ...2020-10-21.gw.uniroll.log ...2020-10-20.gw.uniroll.log
\\Server2\Log\2020-10-22.gw.uniroll.log ...2020-10-21.gw.uniroll.log ...2020-10-20.gw.uniroll.log
|
Логирование производится в папку с программой. Диск где установлена программа скрытый, а программа находится в с$\Program Files (x86).
На всех серверах и backup одна уч. запись, через нее имеется доступ к скрытым ресурсам данных серверов.
т.е. путь к ним выглядит:
\\Server1\c$\Program Files (x86)\Test\Log\2020-10-22.gw.uniroll.log ...2020-10-21.gw.uniroll.log ...2020-10-20.gw.uniroll.log
\\Server2\c$\Program Files (x86)\Test\Log\2020-10-22.gw.uniroll.log ...2020-10-21.gw.uniroll.log ...2020-10-20.gw.uniroll.log
2.
Цитата:
Более старые файлы перемещаются в другое место в папку с именем сервера-источника, например:
\\Backup_Server\Server1\Log\2020-10-19.gw.uniroll.log ...2020-10-18.gw.uniroll.log ...
\\Backup_Server\Server2\Log\2020-10-19.gw.uniroll.log ...2020-10-18.gw.uniroll.log ...
|
Более старые перемещаются на Backup сервер в архив
\\Backup_Server\d$\Arh\Server1\logs_06-092020.zip
\\Backup_Server\d$\Arh\Server2\\logs_06-092020.zip.
Если копирование логов из
\\Server1\c$\Program Files (x86)\Test\Log\
\\Server2\c$\Program Files (x86)\Test\Log\
.........
не произошло (данные логи не найдены), то необходимо произвести поиск и копирование с извлечением из архивов:
\\Backup_Server\d$\Arh\Server1\logs_06-092020.zip
\\Backup_Server\d$\Arh\Server2\logs_06-092020.zip
........
Ребят, возможно ли доработать коды?
Буду признателен за помощь!
Немного переделанный код Megaloman с именами серверов:
Код:

@Echo On
Call :Together "2020-10-05.gw.uniroll.log"
Exit /B
:Together
Set "AllComp=Max-ПК"
Set "Folders=c$\Test\1 c$\Test\2"
Set "LogFolder=Log"
Set "BoxOut=d:\Backup\files"
If Not Exist "%BoxOut%\%~n1" (
Md "%BoxOut%\%~n1" ||(Echo Folder "%BoxOut%\%~n1" not created &Pause &Exit /B 1)
)
>nul 2>&1 (For %%c In (%AllComp%) Do (
For %%a In (%Folders%) Do (
Copy "\\%%c\%%a\%LogFolder%\%~1" "%BoxOut%\%~n1\%~n1_%%c%~x1")
)
)
)
Exit /B
тоже будет работает при разных именах серверов, но к сожалению почему то так же как и с нумерацией не хочет работать с c$\Program Files (x86)\Test\Log\