IF: Udfører betinget behandling i batchprogrammer.


... Eksempler på kommandoen "IF"
... "IF" Uddrag fra Microsoft Windows Hjælp
... Vigtig information, tip til kommandoen "IF"

Kommandoen: "IF" er tændt Windows 11, 10, .. tilgængelig

Eksempler på kommandoen "IF"

Det`IF`kommando i Windows Kommandoprompt bruges til at udføre betingede sætninger i batch-scripts. Her er nogle eksempler: Eksempel 1: Simpelt ligestillingstjek:

@ECHO OFF
SET Variable1=10
SET Variable2=10

IF %Variable1% EQU %Variable2% (
    ECHO Variablerne er de samme.
) ELSE (
    ECHO Variablerne er ikke ens.
)

Beskrivelse: I dette eksempel er variablerne`Variable1`og`Variable2`sammenlignes. Hvis de er ens, vises meddelelsen "Variablerne er ens." output, ellers "Variablerne er ikke ens." Eksempel 2: Kontrol af fileksistens:

@ECHO OFF
IF EXIST C:\Eksempel.txt (
    ECHO Filen eksisterer.
) ELSE (
    ECHO Filen findes ikke.
)

Beskrivelse: Dette kontrollerer, om filen "Example.txt" findes i mappen C:\. Hvis filen eksisterer, udsendes den tilsvarende meddelelse, ellers den anden. Eksempel 3: Kontrollerer for brugerinput:

@ECHO OFF
SET /P bruger_input=Indtast venligst en værdi: 

IF "%bruger_input%"=="" (
    ECHO Du har ikke indtastet en værdi.
) ELSE (
    ECHO De har "%bruger_input%" ind.
)

Beskrivelse: Dette kontrollerer, om brugeren har indtastet en værdi. Hvis der ikke er indtastet noget, vises meddelelsen "Du har ikke indtastet en værdi." output, ellers vises den indtastede tegnstreng. Eksempel 4: Kontrol af filstørrelse:

@ECHO OFF
SET fil=C:\Eksempel.txt
SET Minimum_størrelse=1024

FOR %%A IN (%fil%) DO SET filstørrelse=%%~zA

IF %filstørrelse% GEQ %Minimum_størrelse% (
    ECHO Filen opfylder minimumsstørrelsen.
) ELSE (
    ECHO Filen er for lille.
)

Beskrivelse: Størrelsen på filen "Example.txt" er markeret her. Hvis filstørrelsen er større end eller lig med minimumsstørrelsen (`Minimum_størrelse`), meddelelsen "Filen opfylder minimumsstørrelsen." output, ellers "Filen er for lille." Eksempel 5: Kontrol af operativsystemet:

@ECHO OFF
VER | FIND "Windows 10" > NUL

IF %ERRORLEVEL% EQU 0 (
    ECHO du bruger Windows 10.
) ELSE (
    ECHO Du bruger et andet operativsystem.
)

Beskrivelse: Dette kontrollerer, om operativsystemet er Windows 10. Hvis ja, meddelelsen "Du bruger Windows 10." ellers "bruger du et andet operativsystem." Det`IF`statement gør det muligt at kontrollere forskellige forhold i batch-scripts og tage passende handlinger baseret på resultaterne.

"IF" Uddrag fra Microsoft Windows Hjælp

Microsoft Windows [Version 10.0.19045.3693]
(c) Copyright 1985-2023 Microsoft Corp.

C:\\Windows>

Udfører betinget behandling i batchprogrammer.

IF [NOT] ERRORLEVEL nummer kommando
IF [NOT] streng1==streng2 kommando
IF [NOT] EXIST filnavn kommando

NOT Angiver, at Windows kun skal udføre
kommandoen, hvis betingelsen er falsk.

ERRORLEVEL nummer Angiver en sand betingelse, hvis sidste 
programkørsel
gav en returkode, som var større end eller 
lig med det angivne
nummer.

streng1==streng2 Angiver en betingelse, der er sand, hvis de 
angivne
tekststrenge er ens.

EXIST filnavn Angiver en betingelse, der er sand, hvis den 
angivne fil
findes.

kommando Angiver den kommando, som skal udføres, hvis 
betingelsen
er opfyldt. Kommandoen kan efterfølges af 
kommandoen ELSE,
som vil starte kommandoen efter ELSE-
nøgleordet, hvis den angivne betingelse er 
falsk.

ELSE-sætningen skal være på den samme linje som kommandoen efter 
IF.
Eksempel:

IF EXIST filnavn. (
del filnavn.
) ELSE (
echo filnavn. findes ikke.
)

Følgende vil IKKE virke, da del-kommandoen skal afsluttes med
en ny linje:

IF EXIST filnavn. del filnavn. ELSE echo filnavn. findes ikke

Følgende vil heller ikke virke, da ELSE-kommandoen skal være på 
den samme
linje som slutningen af IF-kommandoen:

IF EXIST filnavn. del filnavn.
ELSE echo filnavn. findes ikke

Følgende vil virke, hvis du vil have det hele på én linje:

IF EXIST filnavn. (del filnavn.) ELSE echo filnavn. findes 
ikke

Hvis kommandoudvidelserne er aktiveret, ændres IF på følgende 
måde:

IF [/I] streng1 sammenligningsop streng2 kommando
IF CMDEXTVERSION nummer kommando
IF DEFINED variabel kommando,

hvor der kan bruges følgende sammenligningsoperatorer:

EQU - lig med
NEQ - ikke lig med
LSS - mindre end
LEQ - mindre end eller lig med
GTR - større end
GEQ - større end eller lig med

og parameteren /I, fortæller, hvis den er angivet, at der skal 
foretages
sammenligninger af strenge med hensyn til store og små bogstaver.
Parameteren /I kan også bruges i forbindelse med IF-formularen
streng1==streng2. Disse sammenligninger er generiske, dvs. at 
hvis
både streng1 og streng2 består af numeriske cifre, konverteres 
tallene,
og der foretages en numerisk sammenligning.

Betingelsen CMDEXTVERSION virker ligesom ERRORLEVEL, bortset fra,
at der sammenlignes med et internt versionsnummer, som er knyttet 
til
kommandoudvidelserne. Den første version er 1. Den forøges med 
en, når
der føjes betydelige udvidelser til kommandoudvidelserne. 
Betingelsen
CMDEXTVERSON er aldrig sand, når kommandoudvidelserne er 
deaktiveret.

Betingelsen DEFINED virker ligesom EXISTS, bortset fra at den 
tager et
miljøvariabelnavn og returnerer sand, hvis miljøvariablen er 
defineret.

%ERRORLEVEL% udvides til en strengrepræsentation af
den aktuelle værdi af ERRORLEVEL, forudsat at der ikke allerede 
findes
en miljøvariabel med navnet ERRORLEVEL. I det tilfælde får du 
dens
værdi i stedet. Når du har kørt et program, illustrerer følgende
brugen af ERRORLEVEL:

goto answer%ERRORLEVEL%
:answer0
echo Programmet havde returkode 0
:answer1
echo Programmet havde returkode 1

Du kan også bruge den numeriske sammenligning ovenfor:

IF %ERRORLEVEL% LEQ 1 goto okay

%CMDCMDLINE% udvides til den oprindelige kommandolinje, som blev
overgivet til CMD.EXE inden behandling af CMD.EXE, forudsat at 
der
ikke allerede er en miljøvariabel med navnet CMDCMDLINE. I det 
tilfælde
får du dens værdi i stedet.

%CMDEXTVERSION% udvides til en strengrepræsentation af en aktuel
værdi af CMDEXTVERSION, forudsat der ikke allerede findes en
miljøvariabel med navnet CMDEXTVERSION. I det tilfælde får du 
dens
værdi i stedet.

Vigtig information, tip til kommandoen "IF"

Ved brug af`IF`sætning i Windows kommandoprompt, er der nogle vigtige punkter at bemærke: 1. Betingelsessyntaks: Syntaksen for`IF`-Erklæring kræver korrekt formulering af betingelsen. Sammenligningsoperatøren (`EQU`,`NEQ`,`LSS`,`LEQ`,`GTR`,`GEQ`) skal være mellem de værdier, der skal sammenlignes. Bemærk mellemrummene i syntaksen for at undgå uventede fejl. 2. Brug af anførselstegn: Ved validering af strenge er det vigtigt at bruge anførselstegn for at sikre, at tilstanden vurderes korrekt. Eksempel:`IF "%Variable%"=="Værdi" ...` 3. Variabler: Hvis du bruger variabler i betingelsen, skal du sørge for, at de matcher korrekt`%`er vedlagt, som i`%Variable%`. Dette sikrer, at værdien af ​​variablen er korrekt indsat i betingelsen. 4. ELSE erklæring: Den`ELSE`erklæring skal være på samme linje som den afsluttende parentes af`IF`stå eller starte på en ny linje. Eksempel:

IF Tilstand (
    Echo Tilstanden er sand.
) ELSE (
    Echo Tilstanden er falsk.
)

5. Bemærk`%ERRORLEVEL%`efter en kommando: Hvis du har`IF`kommando efter en anden kommando, kan du`%ERRORLEVEL%`for at kontrollere succes eller fiasko for denne kommando. Eksempel:

DIR C:\Ikke_eksisterende_mappe
IF %ERRORLEVEL% NEQ 0 (
    Echo Fejl ved udførelse DIR-kommando.
)

6. Numeriske sammenligninger: For numeriske sammenligninger bør du`EQU`,`NEQ`,`LSS`,`LEQ`,`GTR`,`GEQ`for at sikre, at sammenligningerne er foretaget korrekt. 7. Logiske operatorer: Du kan bruge logiske operatorer som f.eks`AND`(`&&`) og`OR`(`||`) for at skabe komplekse forhold. Eksempel:

IF Exist fil.txt IF %Variable% EQU Værdi (
    Echo Begge forhold er sande.
)

8. Kombination med andre kommandoer: Du kan gøre dette`IF`-Kombiner udsagn med andre kommandoer for at udføre forskellige handlinger baseret på forhold. 9. Whitespace: Pas på ikke at bruge unødvendige whitespace i dine betingelser eller kommandoer, da dette kan føre til uventet adfærd. Det er vigtigt at forstå syntaksen af`IF`-Forstå instruktionen nøje og sørg for, at betingelserne er formuleret korrekt for at opnå den ønskede adfærd. Hvis du er usikker, kan du konsultere den officielle Microsoft-dokumentation eller onlineressourcer.


Deutsch
English
Español
Français
Italiano
日本語 (Nihongo)
한국어 (Hangugeo)
汉语 (Hànyǔ)
Türkçe
Português
Português
Svenska
Norsk
Dansk
Suomi
Nederlands
Polski









Windows-10


... Windows 10 FAQ
... Windows 10 How To


Windows 10 How To


... Windows 11 How To
... Windows 10 FAQ



Kommando-linje IF - Udfører betinget behandling i batchprogrammer.

HTTP: ... console/da/038.htm
0.109
14788

Full duplex connections, transmission rate and speed?

DirectX 12 doesn't work on my Windows 11, why?

Windows keyboard commands with examples for remote desktop?

Who needs the alternative cmd.exe and why?

Help the MS Windows 11 does not have an on-screen keyboard!

How can I take a screenshot in Windows 11 excluding a keyboard shortcut?



(0)