Kommandofil

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 12 mars 2017; verifiering kräver 31 redigeringar .
kommandofil
Förlängning .bat
Formattyp Skript programmeringsspråk

En batchfil ( eng.  batchfil ) är en textfil i MS-DOS , OS/2 eller Windows som innehåller en sekvens av kommandon avsedda att köras av en kommandotolk . Efter att ha kört en batchfil läser tolkprogrammet (vanligtvis COMMAND.COM eller cmd.exe ) den rad för rad och utför kommandona i sekvens. En batchfil är en analog av kommandoradsskriptfiler ( skalskript ) i Unix-liknande operativsystem .

Batchfiler i DOS har tillägget .BAT; för andra operativsystem kan de ha olika tillägg – till exempel .CMDi Windows NT och OS/2, eller .BTMi 4DOS eller liknande skal.

Historik

Batchfilstöd har funnits i MS-DOS sedan starten. Skalen i detta system (och senare Windows) erbjuder två driftslägen: interaktiv (där användaren bekräftar exekveringen av varje batchfilkommando) och normal (där alla kommandon i batchfilen exekveras utan bekräftelse). Konceptet för båda lägena togs från kommandoradsgränssnitten i tidigare operativsystem (som CP/M ) och Unix-skal .

Kommandotolken i MS-DOS (och senare i Windows 9x-familjen ) heter COMMAND.COM . Den mest kända batchfilen på dessa system är AUTOEXEC.BAT , som exekveras automatiskt av COMMAND.COM när operativsystemet startar.

Windows NT -familjen ( 2000 , XP och framåt) är inte baserade på MS-DOS och inkluderar cmd.exe -tolken , som är delvis kompatibel med COMMAND.COM. Vissa gamla funktioner i COMMAND.COM är inte tillgängliga i den, men nya har dykt upp istället. COMMAND.COM ingår i NT-liknande system för bättre bakåtkompatibilitet.

Det finns andra skal utvecklade av tredje part som tillhandahåller utökad kommandosyntax för batchprogrammering, till exempel 4DOS .

Det finns också batchfilkompilatorer (som Bat To Exe Converter) som konverterar batchfiler till fristående körbara program .

Applikation

Batchfiler är användbara för att automatiskt starta program. Det huvudsakliga tillämpningsområdet är automatiseringen av de mest rutinmässiga operationerna som en datoranvändare regelbundet måste utföra: till exempel kopiera, flytta, byta namn, ta bort filer; arbeta med mappar; arkivering etc.

Virus och skämtprogram kan skrivas som en batchfil, och virusgeneratorer som är batchfiler är också kända (Virra 1.0, BADtch RAT 0.4 och andra).

Innehåll

Batchfiler stöder if , goto och för uttalanden (i system i Windows NT- familjen utökas dess kapacitet avsevärt), vilket gör att du kan bearbeta resultatet av exekveringen av tidigare kommandon eller applikationer och, beroende på detta, exekvera ett eller annat block av kommandon ytterligare (vanligtvis, vid framgångsrikt slutförande returnerar applikationen 0 i felnivåvariabeln ; vid misslyckande, 1 eller fler).

Batchfiler kan innehålla både interna kommandon som behandlas direkt av COMMAND.COM eller CMD.EXE, och anrop till externa verktyg som finns som separata program (.EXE-filer eller andra körbara moduler ).

Exempel

Ett exempel på en batchfil som utvärderar uttryck som angetts av användaren:

@ eko av chcp 866 titel Miniräknare färg 71 : börja echo Ange ett uttryck: ställ in /p exp = set /a resultat = " %exp% " cls eko Beräknad echo Ditt uttryck: %exp% eko Resultat: %result% eko . paus cls ska börja
  1. Stäng av "eko" (utmatning av löpande linjer till skärmen).
  2. Ändra den aktuella kodningen till kyrillisk
  3. Ändra titeln på Windows-fönstret till raden "Kalkylator".
  4. Ändra färgen på texten och bakgrunden (mörkblå till ljusgrå).
  5. Skapa en etikett.
  6. Utdata från raden "Ange ett uttryck."
  7. Skapa en variabel expför att lagra användarindata.
  8. Utvärdera resultatet av ett uttryck och placera det i en variabel result.
  9. Rengöring av skärm.
  10. Utdata från raden "Beräknad".
  11. Utdata från strängen "Ditt uttryck" och värdet på variabeln exp.
  12. Utdata från strängen "Resultat" och värdet på variabeln result.
  13. Tom linjeutgång.
  14. Stoppa kodexekveringen tills valfri tangent trycks ned.
  15. Rengöring av skärm
  16. Hoppa till startetiketten, kodexekveringen börjar med nästa kommando efter etiketten.

Se även

Länkar