Er det muligt at få ROBOCOPY til at afslutte med en exit-kode, der angiver succes eller fejl, i stedet for den nuværende bitmaske? Hvis ikke, findes der en simpel sekvens af batch-kommandoer, der kan oversætte ROBOCOPY's bitmaske til en tilsvarende værdi?
Mulighed for at få ROBOCOPY til at afslutte med en exit-kode kan opnås ved at bruge batch-kommandoer til at oversætte bitmasken til en simpel exit-kode, der angiver succes (0) eller fejl (1).
Mulighed for at Få ROBOCOPY til at Afslutte med en Exit-kode
ROBOCOPY afslutter normalt med en bitmaske, der angiver forskellige statusser for kopieringsprocessen. Det er ikke direkte muligt at få ROBOCOPY til at afslutte med en simpel exit-kode, der kun angiver succes eller fejl. Men du kan bruge en sekvens af batch-kommandoer til at oversætte ROBOCOPY's bitmaske til en tilsvarende værdi.
Batch-kommandoer til Oversættelse af ROBOCOPY's Bitmaske
Her er en simpel sekvens af batch-kommandoer, der kan hjælpe med at oversætte ROBOCOPY's bitmaske til en mere forståelig exit-kode:
@echo off
setlocal
rem Kør ROBOCOPY og gem exit-koden
robocopy "kilde" "destination" /E
set "exitCode=%ERRORLEVEL%"
rem Initialiser en variabel til at holde den nye exit-kode
set "newExitCode=0"
rem Tjek bitmasken og sæt den nye exit-kode
if %exitCode% geq 8 (
set "newExitCode=1"
) else (
set "newExitCode=0"
)
rem Afslut med den nye exit-kode
exit /b %newExitCode%
Forklaring af Batch-kommandoerne
- @echo off: Slår kommando-echoing fra for at gøre outputtet mere læsbart.
- setlocal: Starter en lokal miljøblok for at undgå at ændre globale variabler.
- robocopy "kilde" "destination" /E: Kører ROBOCOPY og kopierer alle filer og mapper fra kilde til destination. Du kan tilpasse denne kommando efter dine behov.
- set "exitCode=%ERRORLEVEL%": Gemmer ROBOCOPY's exit-kode i en variabel.
- set "newExitCode=0": Initialiserer en variabel til at holde den nye exit-kode.
- if %exitCode% geq 8: Tjekker om ROBOCOPY's exit-kode er større end eller lig med 8, hvilket indikerer en fejl.
- set "newExitCode=1": Sætter den nye exit-kode til 1, hvis der er en fejl.
- exit /b %newExitCode%: Afslutter batch-filen med den nye exit-kode.
Ved at bruge denne sekvens af batch-kommandoer kan du effektivt oversætte ROBOCOPY's bitmaske til en simpel exit-kode, der angiver succes (0) eller fejl (1).