Kommandoen: "GOTO" er på Windows 12, 11, 10, .. , MS Server 2025, 2022, 2019, .. tilgjengelig
Eksemplene for kommandoen "GOTO"
De
`GOTO`kommando i Windows Kommandoprompt brukes til å kontrollere utførelsen av et batchskript til et spesifikt linjenummer i skriptet. Her er noen eksempler:
Eksempel 1: Enkel GOTO:
@ECHO OFF
ECHO Dette er linje 1
GOTO :Eksempel
ECHO Dette vil bli hoppet over
:Eksempel
ECHO Dette er linjen etter GOTO
Beskrivelse: Skriptet kjøres og når det kommer til linjen med
`GOTO :Eksempel`kommer, hopper den til etiketten
`:Eksempel`, og utførelsen fortsetter derfra.
Eksempel 2: Bruk av etiketter for hopp:
@ECHO OFF
ECHO Dette er linje 1
GOTO :Steg1
ECHO Dette vil bli hoppet over
:Steg1
ECHO Dette er linje 2
GOTO :Steg2
:Steg2
ECHO Dette er linje 3
Beskrivelse: Manuset hopper fra
`:Steg1`til
`:Steg2`, og utførelsen fortsetter.
Eksempel 3: Betingede hopp med IF:
@ECHO OFF
SET Brukernavn=John
IF "%Brukernavn%"=="John" GOTO :Suksess
ECHO Dette vil bli hoppet over
GOTO :Slutt
:Suksess
ECHO Velkommen, John!
:Slutt
Beskrivelse: Dette sjekker om brukernavnet er
"John". Hvis ja, vil det gjøre det
`:Suksess`hoppet og den tilsvarende meldingen sendes ut. Ellers blir det også
`:Slutt`hoppet.
Eksempel 4: Looping med GOTO:
@ECHO OFF
SET /A Disk=1
:loop_start
ECHO Løkkeiterasjon %Disk%
SET /A Disk+=1
IF %Disk% LEQ 5 GOTO :loop_start
ECHO Løkken ble avsluttet
Beskrivelse: Her lages en enkel sløyfe ved hjelp av GOTO. Løkken gjentas fem ganger før den avsluttes.
Eksempel 5: Feilhåndtering med GOTO:
@ECHO OFF
REM Her kommer Code, som potensielt kan forårsake en feil
IF ERRORLEVEL 1 GOTO :Feilhåndtering
ECHO De Code ble utført vellykket
GOTO :Slutt
:Feilhåndtering
ECHO Det har oppstått en feil. Feil kode: %ERRORLEVEL%
GOTO :Slutt
:Slutt
Beskrivelse: Enkel feilhåndtering er gitt her
`GOTO`utført. Hvis det oppstår en feil (ved å sjekke feilnivået med
`ERRORLEVEL`), blir
`:Feilhåndtering`hoppet og en tilsvarende melding sendes ut.
Det er viktig å merke seg at overdreven bruk av
`GOTO`kan føre til vanskelig å lese og vanskelig å vedlikeholde kode i skript. I mange tilfeller kan andre konstruksjoner som løkker og betingede utsagn (som
`IF`) foretrukket.
"GOTO" Utdrag fra Microsoft Windows Hjelp
Microsoft Windows [Version 10.0.19045.3693]
(c) Copyright 1985-2023 Microsoft Corp.
C:\\Windows>
Sender cmd.exe til en navngitt linje i et satsvist program.
GOTO etikett
etikett Angir en tekststreng som brukes som etikett i et
satsvist program.
Du skriver inn en etikett på en egen linje, og begynner med et
kolon.
Hvis kommandoutvidelser er aktivert, får GOTO følgende endringer:
GOTO-kommandoen godtar nå måletiketten :EOF, som overfører
kontrollen til
slutten av gjeldende satsvise skriptfil. Dette er en lett måte å
avslutte
en satsvis skriptfil uten å definere en etikett. Skriv CALL /?
for å se en
beskrivelse av utvidelser for CALL-kommandoen som gjør at denne
funksjonen
er nyttig.
Viktig informasjon, tips for "GOTO"-kommandoen
Når du bruker
`GOTO`kommandoen i Windows-ledeteksten, er det noen punkter du må huske på for å sikre at batchskriptet ditt fungerer som det skal og er lett å forstå:
1.
Lesbarhet og vedlikehold: Overdreven bruk av
`GOTO`kan føre til forvirrende og vanskelig å forstå kode. Det er ofte tilrådelig å bruke alternative konstruksjoner som løkker (
`FOR`,
`WHILE`) og betingede uttalelser (
`IF`) for å forbedre lesbarheten og vedlikeholdet av skriptet.
2.
Navn etiketter tydelig: Etiketter (stedene å hoppe til) bør ha klare og meningsfulle navn for å forbedre kodeforståelsen. For eksempel
`:Start`,
`:Steg1`,
`:Slutt`er bedre enn generelle navn som
`:Label1`,
`:Label2`.
3.
Strukturert programmering: Strukturert programmering fremmer klare strukturer i koden. Bruk
`GOTO`nøye og prøv å organisere koden i logiske blokker.
4.
Unngå endeløse løkker: Hvis du
`GOTO`Hvis den brukes sammen med løkker, sørg for at det er en mekanisme som avslutter løkken for å unngå endeløs utførelse.
5.
Sørg for at etiketter eksisterer: Før du hopper til en etikett, sørg for at etiketten faktisk finnes i skriptet. Ellers vil skriptet avsluttes med en feil.
6.
Feilhåndtering: Hvis du
`GOTO`for feilhåndtering, sørg for at du gjennomgår feilkoden nøye og svarer på riktig måte. Sjekk feil med
`ERRORLEVEL`.
IF ERRORLEVEL 1 GOTO :Feilhåndtering
7.
Foretrekk betingede utsagn: I noen tilfeller kan betingede utsagn (
`IF`,
`ELSE`) et bedre alternativ til
`GOTO`spesielt hvis det gjør strukturen til manuset klarere.
8.
Strukturert programmering: Strukturert programmering fremmer klare strukturer i koden. Bruk
`GOTO`nøye og prøv å organisere koden i logiske blokker.
9.
Sjekk av alternativer: I noen tilfeller kan det være mer elegante alternativer
`GOTO`. Vurder om andre konstruksjoner som funksjoner, løkker eller betingede utsagn er mer passende.
10.
Legg til kommentarer: Hvis du
`GOTO`Hvis du bruker det, legg til kommentarer for å gjøre intensjonen bak hoppet tydelig. Kommenter spesielt komplekse eller viktige hopp.
Det er viktig å merke seg at moderne programmeringspraksis ofte fokuserer på bruken av
`GOTO`å minimere og fremme strukturert programmering. I mange tilfeller kan alternativer gjøre koden mer lesbar og enklere å vedlikeholde.