da.phhsnews.com


da.phhsnews.com / Sådan skrives et batch script på Windows

Sådan skrives et batch script på Windows


Ved du, hvordan du bruger kommandoprompt? Hvis du gør det, kan du skrive en batchfil. I sin enkleste form er en batch-fil (eller batch script) en liste over flere kommandoer, der udføres, når du dobbeltklikker på filen. Batch-filer går helt tilbage til DOS, men arbejder stadig på moderne versioner af Windows.

PowerShell-scripts og Bash-scripts kan være mere kraftfulde, men batch-filer kan stadig være meget nyttige, hvis du skal køre grundlæggende Windows-kommandoer.

Batchfil Basics

En batchfil er simpelthen en tekstfil gemt med .bat filtypenavnet. Du kan skrive en ved hjælp af Notesblok eller et mere avanceret tekstredigeringsprogram som Notepad ++, men brug ikke et tekstbehandlingsprogram som Microsoft Word.

Lad os lave en enkel batchfil. Først skal du åbne Notesblok. Indtast følgende linjer i det:

ECHO OFF ECHO Hello World PAUSE

Derefter gem filen ved at klikke på Arkiv> Gem. Giv det et navn, du kan lide, men erstat standard .txt filudvidelsen med .bat-udvidelsen.

Du kan f.eks. Nævne dethello_world.bat.

Du har nu en batch-fil med .bat filtypenavnet. Dobbeltklik på det for at køre det. Denne særlige batchfil indstiller ECHO (som rydder udgangen ved at skjule kommandoerne fra at blive udskrevet ved prompten, udskriver teksten "Hello World" til skærmen og venter derefter på, at du trykker på en tast, inden den slutter.

Hvis du ikke tilføjedePAUSEtil filen, ville batchfilen blot køre sine kommandoer og derefter lukke automatisk. I dette tilfælde ville det udskrive "Hello World" til vinduet og derefter straks lukke Kommandopromptvindue Når du hurtigt vil køre kommandoer uden at se output, kan du udelade dette. Hvis du kører flere kommandoer, kan du placere kommandoenPAUSEmellem dem.

Skrivning af en Mere kompleks batchfil

Det er grundlæggende nemt at oprette en batchfil. Det eneste du skal ændre er, hvad du skriver i Notepad. Hvis du vil køre flere kommandoer, skriver du hver enkelt på sin egen linje og batchfilen kører hver en i rækkefølge.

Lad os sige, at vi vil skrive en batchfil, der kører flere netværksdiagnoser tic kommandoer. Vi vil muligvis køreipconfig / allfor at se netværksoplysninger,ping google.comfor at se, om Googles servere reagerer ogtracert google.comfor at køre en traceroute til google.com og se om der er problemer på vej.

I den mest grundlæggende form kunne vi blot placere alle disse kommandoer i en batchfil, den ene efter den anden, sådan:

ipconfig / alle ping google.com tracert google.com PAUSE

Når vi kører denne fil, vil vi kun se output fra hver kommando lige efter hinanden. Men det er ikke nødvendigvis den ideelle måde at skrive en batchfil på.

Du kan f.eks. Tilføje kommentarlinjer. En hvilken som helst linje, der begynder med en::, er en kommentar linje og vil ikke blive udført. Det gør dem til en nyttig måde at forklare, hvad der sker i filen for alle, du kan give det til - eller til dit fremtidige selv, som måske glemmer, hvorfor du lægger en bestemt kommando derinde.

Du vil måske også tilføje " ECHO OFF "kommando til begyndelsen af ​​filen. Dette tilføjes typisk til starten af ​​de fleste batch-filer. Når du gør dette, vil kommandoerne ikke blive udskrevet til kommandopromptet, men resultaterne bliver. Du kan f.eks. Se netværksforbindelsesoplysningerne, men ikke linjen "ipconfig / all". De fleste mennesker er ligeglade med at se kommandoerne, så det kan rydde udgangen.

Så her er hvad der kan se ud:

:: Denne batchfil kontrollerer netværksforbindelsesproblemer. ECHO OFF :: Se netværksforbindelsesoplysninger ipconfig / all :: Kontrollér, om Google.com er tilgængelig ping google.com :: Kør en traceroute for at kontrollere ruten til Google.com-tracert google.com PAUSE

Der er andre retninger du kunne gå med en batchfil som denne. Du kan f.eks. Have din batch script køre ovenstående kommandoer og derefter dumpe output til en tekstfil, du kan se senere. For at gøre det, vil du bruge>>operatør efter hver kommando for at tilføje dens output til tekstfilen. Da vi alligevel vil læse produktionen fra tekstfilen, kan vi udelade kommandoenPAUSE.

: Denne batchfil kontrollerer netværksforbindelsesproblemer :: og gemmer output til a. txt fil. ECHO OFF :: Se netværksforbindelsesoplysninger ipconfig / all >> results.txt :: Kontroller, om Google.com er tilgængelig ping google.com >> results.txt :: Kør en traceroute for at tjekke ruten til Google.com tracert google. com >> results.txt

Når du har kørt det ovenstående script, vil du finde en fil med navnet results.txt i samme mappe som batchfilen med output fra kommandoerne. Vinduet Kommandoprompt lukkes automatisk, når batchfilen er færdig med at køre.

Eksemplet, som vi bruger ovenfor, er baseret på, at der faktisk udskrives information til kommandoprompt, så brugeren kan læse den. Imidlertid er mange batchfiler designet til at blive kørt ikke-interaktivt. Du kan f.eks. Have en batchfil, der sletter flere filer eller mapper, når du dobbeltklikker på den. Du skal bare bruge kommandoendeltil at slette filer eller kommandoendeltreefor at slette mapper. Husk, at du bare bruger de samme kommandoer, du vil køre i et kommandopromptvindue.

Grundlæggende er det punktet for de fleste batch-filer - bare kører et par kommandoer efter hinanden. Batchfiler kan imidlertid faktisk være betydeligt mere komplekse end dette. Du kan f.eks. Bruge "IF" -opgørelser sammen med kommandoen "GOTO" for at kontrollere værdien af ​​noget og derefter springe til forskellige linjer afhængigt af resultatet. Dette er mere som at skrive et faktisk lille program end et hurtigt og snavset script. Det er en grund til, at .bat-filer nogle gange kaldes "batch-programmer". Hvis du vil gøre noget mere komplekst, finder du masser af hjælpelinjer til at gøre specifikke ting med batchprogrammering online. Men nu ved du det grundlæggende om hvordan man smider en simpel sammen.


Sådan indstilles standard korte og lange dato og klokkeslætformater, der bruges i Word

Sådan indstilles standard korte og lange dato og klokkeslætformater, der bruges i Word

Indsætte dato og klokkeslæt, der automatisk opdateres til et dokument, kan være nyttigt. Der er mange formater for datoen og klokkeslættet, som du kan vælge i dialogboksen "Dato og tid", og du kan kontrollere, hvilke formater der findes. RELATED: Sådan indsættes den formaterede dato nemt og tid i Microsoft Word Når du indsætter datoen og / eller tiden ved hjælp af dialogboksen "Dato og tid", har du muligvis bemærket knappen "Set as Default".

(how-to)

Sådan stopper du iPhoto fra start, når du tilslutter iPhone, iPad eller hukommelseskort

Sådan stopper du iPhoto fra start, når du tilslutter iPhone, iPad eller hukommelseskort

Når du skifter til OS X, var der en stor irritation, der skete igen og igen - hver gang jeg plugge noget i min MacBook, og det sker med en DCIM-mappe på filsystemet, vil iPhoto straks starte og starte scanning. RELATED: Hvorfor stiller hvert kamera billeder i en DCIM-mappe? Problemet er at jeg ikke vil bruge iPhoto hele tiden - jeg mener sikkert, jeg kan bruge den til at importere mine billeder, men hvad nu hvis jeg forsøger at gøre noget andet som at hack min Minecraft Pocket gem filer, eller har jeg fik andet indhold på et flytbart drev?

(how-to)