14Sep

So schreiben Sie ein Batch-Skript unter Windows

click fraud protection

Wissen Sie, wie Sie die Eingabeaufforderung verwenden? Wenn Sie dies tun, können Sie eine Batch-Datei schreiben. In ihrer einfachsten Form ist eine Batch-Datei( oder ein Batch-Skript) eine Liste mehrerer Befehle, die ausgeführt werden, wenn Sie auf die Datei doppelklicken. Batch-Dateien gehen den ganzen Weg zurück zu DOS, funktionieren aber immer noch mit modernen Windows-Versionen.

PowerShell-Skripte und Bash-Skripte sind möglicherweise leistungsfähiger, aber Batch-Dateien können immer noch nützlich sein, wenn Sie grundlegende Windows-Befehle ausführen müssen.

Batchdatei-Grundlagen

Eine Batchdatei ist einfach eine Textdatei, die mit der Dateierweiterung. bat gespeichert wird. Sie können einen mit Notepad oder einem erweiterten Texteditor wie Notepad ++ schreiben, aber kein Textverarbeitungsprogramm wie Microsoft Word verwenden.

Lassen Sie uns eine einfache Batch-Datei erstellen.Öffnen Sie zunächst den Editor. Geben Sie die folgenden Zeilen ein:

ECHO OFF ECHO Hello World PAUSE
instagram viewer

Als nächstes speichern Sie die Datei, indem Sie auf Datei & gt;Sparen. Geben Sie ihm einen beliebigen Namen, ersetzen Sie jedoch die Standarderweiterung. txt durch die Erweiterung. bat.

Zum Beispiel möchten Sie es vielleicht hello_world.bat nennen.

Sie haben jetzt eine Batch-Datei mit der Dateierweiterung. bat. Doppelklicken Sie darauf, um es auszuführen. Diese spezielle Batch-Datei setzt ECHO ab( was die Ausgabe bereinigt, indem die Befehle daran gehindert werden, an der Eingabeaufforderung gedruckt zu werden), den Text "Hello World" auf den Bildschirm druckt und darauf wartet, dass Sie eine Taste drücken, bevor sie endetSie haben der Datei keine PAUSE hinzugefügt, die Stapeldatei würde einfach ihre Befehle ausführen und dann automatisch schließen. In diesem Fall würde "Hello World" in das Fenster gedruckt und dann sofort das Eingabeaufforderungsfenster geschlossenWenn Sie mehrere Befehle ausführen, können Sie den Befehl PAUSE dazwischen setzen

Eine komplexere Batch-Datei schreiben

Es ist ganz einfach, eine Batch-Datei zu erstellenWas Sie in Notepad ändern müssen, ist das, was Sie in Notepad eingeben. Um mehrere Befehle auszuführen, geben Sie jeden Befehl in eine eigene Zeile ein, und die Batch-Datei führt jeden Befehl in der richtigen Reihenfolge aus

Nehmen wir an, wir möchten eine Batch-Datei schreibenläuft sevNetzwerk-Diagnosebefehle. Wir möchten vielleicht ipconfig / all ausführen, um Netzwerkinformationen anzuzeigen, google.com anpingen, um zu sehen, ob die Server von Google darauf reagieren, und tracert google.com, um eine Traceroute zu google.com zu starten und zu sehen, ob es Probleme gibt.

In der einfachsten Form könnten wir einfach alle diese Befehle hintereinander in einer Batch-Datei platzieren:

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

Wenn wir diese Datei ausführen, würden wirsehen Sie einfach die Ausgabe jedes Befehls direkt nach dem anderen. Dies ist jedoch nicht unbedingt der ideale Weg, um eine Batch-Datei zu schreiben.

Sie können beispielsweise Kommentarzeilen hinzufügen. Jede Zeile, die mit einem: : beginnt, ist eine Kommentarzeile und wird nicht ausgeführt. Das macht sie zu einer nützlichen Methode, um zu erklären, was in der Datei passiert, für jeden, dem du es gibst - oder für dein zukünftiges Ich, das vielleicht vergisst, warum du dort einen bestimmten Befehl eingibst.

Sie können auch den Befehl "ECHO OFF" am Anfang der Datei hinzufügen. Dies wird normalerweise am Anfang der meisten Batch-Dateien hinzugefügt. Wenn Sie dies tun, werden die Befehle selbst nicht an die Eingabeaufforderung gedruckt, aber die Ergebnisse werden. Beispielsweise sehen Sie die Netzwerkverbindungsdetails, aber nicht die Zeile "ipconfig / all".Die meisten Leute sind nicht interessiert, die Befehle zu sehen, so dass dies die Ausgabe bereinigen kann.

So könnte das nun aussehen:

: : Diese Batch-Datei prüft auf Netzwerkverbindungsprobleme. ECHO OFF: : Anzeigen der Netzwerkverbindungsdetails ipconfig / all: : Überprüfen Sie, ob Google.com erreichbar ist ping google.com: : Führen Sie eine Traceroute aus, um die Route zu Google.com zu überprüfen tracert google.com PAUSE

Es gibt andere Richtungen, in die Sie gehen könntenmit einer Batchdatei wie dieser. Beispielsweise möchten Sie, dass Ihr Stapel-Skript die obigen Befehle ausführt und die Ausgabe dann in einer Textdatei ablegt, die Sie später anzeigen können. Um dies zu tun, würden Sie die & gt; & gt;Operator nach jedem Befehl, um seine Ausgabe an die Textdatei anzuhängen. Da wir die Ausgabe aus der Textdatei trotzdem lesen werden, können wir den PAUSE-Befehl weglassen.

: : Diese Batch-Datei prüft auf Netzwerkverbindungsprobleme: : und speichert die Ausgabe in einer TXT-Datei. ECHO OFF: : Anzeigen der Netzwerkverbindungsdetails ipconfig / all & gt; & gt;results.txt: : Überprüfen Sie, ob Google.com erreichbar ist ping google.com & gt; & gt;results.txt: : Führen Sie eine Traceroute aus, um die Route zu Google.com zu überprüfen tracert google.com & gt; & gt;Ergebnisse.txt

Nachdem Sie das obige Skript ausgeführt haben, finden Sie eine Datei namens results.txt im selben Ordner wie die Batch-Datei mit der Ausgabe der Befehle. Das Eingabeaufforderungsfenster wird automatisch geschlossen, sobald die Batch-Datei ausgeführt wurde.

Das oben verwendete Beispiel beruht auf dem tatsächlichen Drucken von Informationen an die Eingabeaufforderung, damit der Benutzer sie lesen kann. Viele Stapeldateien sind jedoch so konzipiert, dass sie nicht interaktiv ausgeführt werden. Zum Beispiel könnten Sie eine Batch-Datei haben, die mehrere Dateien oder Verzeichnisse löscht, wenn Sie darauf doppelklicken. Sie müssen nur den Befehl del zum Löschen von Dateien oder den Befehl deltree zum Löschen von Verzeichnissen verwenden. Denken Sie daran, dass Sie nur die gleichen Befehle verwenden, die Sie in einem Eingabeaufforderungsfenster ausführen würden.

Im Grunde geht es bei den meisten Batch-Dateien darum, nur ein paar Befehle nacheinander auszuführen. Batch-Dateien können jedoch wesentlich komplexer als diese sein. Zum Beispiel können Sie "IF" -Anweisungen zusammen mit dem "GOTO" -Befehl verwenden, um den Wert von etwas zu überprüfen und dann zu verschiedenen Zeilen zu springen, abhängig vom Ergebnis. Das ist eher so, als würde man ein wirklich kleines Programm schreiben als ein schnelles und schmutziges Skript. Das ist einer der Gründe, warum. bat-Dateien manchmal als "Batch-Programme" bezeichnet werden. Wenn Sie etwas Komplexeres tun möchten, finden Sie viele Anleitungen, um bestimmte Dinge mit Batch-Programmierung online zu tun. Aber jetzt, Sie kennen die Grundlagen wie man einen einfachen zusammenwirft.