Skapa dina egna kommandon med hjälp av Batch (3 / 4 steg)
Steg 3: Låt oss faktiskt göra något!
Så, först måste du besluta om syntaxen för kommandot. Jag kommer att göra ett kommando för att upprepa ett slumptal mellan parametern en (max) och parametern två (min).
Så, här är koden:
ENABLEDELAYEDEXPANSION om [%1] equ [/?] (
utanför
ECHO ekon ett slumptal.
ECHO.
ECHO användning: RANDOM max min
ECHO.
ECHO "max" i det maximala antal och "min" är minst.
ECHO Max får inte överstiga 32767.
ECHO.
ENDLOCAL
avsluta /b 0
) ställa in max = %1 om % min geq % max () %
ställa in min = %2
ECHO tal för Minimum är mindre än eller lika med maximum antal.
ECHO.
ENDLOCAL
avsluta b 1
) ställa in max-= min
Ange/a num = % slumpmässiga % % % max % + % min %
ECHO % num %
ENDLOCAL
Så, vad är så användbart om ett kommando som endast återspeglar resultatet?
Tja, så länge en kod har en utgång, kan du ange den som en variabel. Så, här är en liten "program" jag gjorde upp.
av & setlocal enabledelayedexpansion : intro : spel
CLS
ECHO Välkommen till Prof Pickle fantastiska spel lycka till!
ECHO.
ECHO bara tryck på valfri tangent för att kasta tärningarna och försöker få en 7!
ECHO.
ECHO.
ECHO tryck valfri tangent för att starta!
Pausa > nul
CLS
om definierat val echo sista roll: % val %
ECHO.
ECHO Pres valfri knapp för att rulla tärningen.
Pausa > nul
för f % % i (random 6 1) ställer in dice1 = %% jag
för f % % i (random 6 1) ställer in dice2 = %% jag
Ange/a val = dice1 + dice2
CLS
om % val % neq 7 (echo FÖRLORAREN!) annars echo vinnare!
ECHO.
ECHO Dice #1 - % dice1%
ECHO Dice #2 - % dice2%
ECHO totalt - % val %
ECHO.
ECHO tryck på valfri tangent för att spela igen
Pausa > nul
gå till spelet
Så, det spelet kommer inte att vinna några Academy awards, men det är bara ett exempel. Så, vad gör ni för att utnyttja det nya kommandot?
Vänta! Inte så snabbt. Innan du använder kommandot, behöver du en kommandofil (inklusive kommandotolken sig), måste du göra den åtkomlig. Håll behandlingen för att ta reda på.