Итак, мне часто приходится проверять журналы резервного копирования нескольких серверов, а затем копировать и вставлять журналы в базу данных. Я пытаюсь написать .bat, который найдет самый последний файл журнала, выполните FINDSTR, чтобы увидеть, успешно ли выполнено резервное копирование, а затем, если оно успешно, скопируйте текст файла журнала в буфер обмена, если это вообще возможно. . У меня есть все это, кроме части буфера обмена, но это не работает так, как я предполагал.
Немного необходимой информации -
Каждый журнал сохраняется на диске D: серверов. Все журналы именуются по следующему соглашению: BK(дата)-(набор резервных копий).txt — Пример — BK0901-001.txt.
В каталоге также обычно есть другие файлы, и они называются по тому же соглашению, за исключением префикса VY, или они будут иметь другое расширение, например файл .xml. Мне нужно избегать файлов с любым префиксом, кроме BK. и все остальные расширения.
@echo off
cd\
cls
set /p busrv=Server?
FOR /F "delims=|" %%I IN ('DIR "\\%busrv%\d$\logs\UltraBac\BK*.txt" /B /O:D') DO findstr /I /C:"Completed Without Errors or Warnings."
IF %errorlevel%==0 (COPY TO CLIPBOARD) echo BACKUPS PASSED
IF %errorlevel%==1 echo BACKUPS NOT PASSED
pause