Sou relativamente novo em tudo isso, mas vou tentar.
Eu escrevi vários arquivos em lote que "sincronizam" (principalmente copiar) hardware diferente que eu tenho. Ele reconhece os números de série do meu disco rígido externo, meus pen drives e meu cartão de memória mini-SD.
Com o meu cartão mini-SD, já que está no meu telefone, copio os arquivos para os dois lados, mas como não quero constantemente encher o pequeno cartão de memória, escrevi no arquivo em lote para sincronizar apenas os arquivos após a última data em que o arquivo foi executado. Isso permite que eu exclua arquivos de ambos os lados, mas ainda use as mesmas pastas que as fontes e destinos.
Basicamente, o arquivo de lote lê um arquivo txt com a última data em que o lote foi executado. Em seguida, o arquivo em lote copia arquivos modificados em ou após essa data, com base em% Last_run_date% e, em seguida, chama outro arquivo em lotes para atualizar o% Last_run_date%.
@echo off
set /p Last_run_date=<"C:\Users\Owner\Desktop\Stuff I don't use\Shortcuts\Batch Files\lastrun.txt"
@echo.
@echo.
@echo.
@echo Last Update %Last_run_date%
@echo.
@echo Sync card to folder!
xcopy "F:\" "C:\Users\Owner\Desktop\Random\Phone Sync Folder" /s /y /h /r /e /c /i /d:%Last_run_date%
@echo.
@echo.
@echo.
@echo Sync folder to card!
echo Videos
xcopy "C:\Users\Owner\Desktop\Random\Phone Sync Folder\Video" "F:\Video" /s /y /h /r /d:%Last_run_date% /e /c /i
echo Audio
xcopy "C:\Users\Owner\Desktop\Random\Phone Sync Folder\Audio" "F:\Audio" /s /y /h /r /d:%Last_run_date% /e /c /i
echo Pictures
xcopy "C:\Users\Owner\Desktop\Random\Phone Sync Folder\Picture" "F:\Picture" /s /y /h /r /d:%Last_run_date% /e /c /i
@echo.
@echo Update LastRun.txt
"C:\Users\Owner\Desktop\Stuff I don't use\Shortcuts\Batch Files\lastrun.bat - Shortcut.lnk"
@echo off
set /p Last_run_date=<"C:\Users\Owner\Desktop\Stuff I don't use\Shortcuts\Batch Files\lastrun.txt"
echo.
echo Current Update %Last_run_date%
Aqui está o lastrun.bat.
@echo off
set DD=%date:~7,2%
set MM=%date:~4,2%
set YY=%date:~10,4%
echo %MM%-%DD%-%YY%>"C:\Users\Owner\Desktop\Stuff I don't use\Shortcuts\Batch Files\lastrun.txt"
Por fim, também tenho outro arquivo de lote que sincroniza um dos meus flash drives que uso na escola. Exclui e refaz o diretório da pasta de impressão para que eu não preencha constantemente o meu pen drive
echo Empty Print Folder (F)
rmdir /s /q "F:\Stuff that needs printed"
mkdir "F:\Stuff that needs printed"
echo Sync to F Drive
xcopy "C:\Users\Owner\Desktop\RandomGB Flashdrive" "F:" /s /y /h /r /d /e /c /i
Além disso, uma pequena observação, se é que isso parece familiar, algumas das partes do código que encontrei pelo Google e depois reorganizei para atender às minhas necessidades.