Verwenden von Batch-Dateien, Teil 2
Dieser Tipp baut auf dem Tipp mit dem Titel „Verwenden von Stapeldateien, Teil 1“ auf. Sie sollten dies daher überprüfen, bevor Sie fortfahren. Insbesondere arbeiten wir mit einer Datei namens „C: \ Bat \ Fun.bat“. Zeigen Sie daher ein Eingabeaufforderungsfenster an und ändern Sie Ihr Standardverzeichnis in C: \ Bat. Starten Sie den Editor, um Fun.bat zu bearbeiten. Dies sieht derzeit folgendermaßen aus:
@ECHO OFF REM This file demonstrates the use of a few command-line statements ECHO Hello. This is my Fun.bat file. DIR %1
Der letzte Befehl in der Datei ist der DIR-Befehl. Es wird eine Verzeichnisliste des Ordners erstellt, der als erster Parameter angegeben wurde, der an die Batchdatei übergeben wurde. Wenn die Liste nicht auf dem Bildschirm angezeigt werden soll, können Sie die Ausgabe mit dem Zeichen „>“ in eine Datei leiten. Ändern wir also Fun.bat, um zwei Parameter zu akzeptieren. Der erste ist der Ordner, dessen Verzeichnisliste Sie erhalten möchten, und der zweite ist die Datei, in die diese Ausgabe verschoben werden soll. Ihre Batch-Datei sollte folgendermaßen aussehen:
@ECHO OFF REM This file demonstrates the use of a few command-line statements ECHO Hello. This is my Fun.bat file. DIR %1 > %2
Sie rufen wie zuvor auf, außer dass Sie jetzt den zweiten Parameter in der Befehlszeile angeben:
C:\Bat> Fun.bat C:\Temp C:\Temp\Dirlist.txt
Führen Sie die Batchdatei aus, und Sie erhalten eine Datei mit dem Namen C: \ Temp \ Dirlist.txt, die die Verzeichnisliste aller Dateien im Verzeichnis C: \ Temp enthält.
Angenommen, Sie haben Tausende von Dateien in Ihrem C: \ Temp-Verzeichnis. Anstatt die lange Liste durchzugehen, möchten Sie möglicherweise nur wissen, ob sich eine bestimmte Datei darin befindet und wie groß sie ist. Sie können dies tun, indem Sie die Ausgabe des DIR-Befehls an einen neuen Befehl, FIND, weiterleiten.
Im Allgemeinen können die meisten Befehle, die Ausgabedaten erzeugen (z. B. die von DIR erzeugten), als Eingabe für einen anderen Befehl verwendet werden – alle in derselben Zeile. Dies wird als „Rohrleitung“ bezeichnet, und das für diese Operation verwendete Zeichen ist der vertikale Balken („|“). Der Befehl, der die Eingabe erwartet, in unserem Fall FIND, wird rechts neben dem Zeichen „Pipe“ (der vertikale Balken) angezeigt. Ersetzen wir also unseren vorherigen DIR-Befehl durch einen, der seine Ausgabe an FIND weiterleitet:
@ECHO OFF REM This file demonstrates the use of a few command-line statements ECHO Hello. This is my Fun.bat file. DIR %1 | FIND "Dirlist"
Diese Änderung bewirkt, dass der Befehl DIR für den angegebenen Ordner ausgeführt wird, die Ausgabe jedoch an den Befehl FIND gesendet wird, der diese Ausgabe nach der Zeichenfolge „Dirlist“ durchsucht und die Ergebnisse auf dem Bildschirm ausgibt. Beachten Sie, dass wir nur einen Parameter übergeben – den Ordnernamen, für den das DIR ausgeführt werden soll. Wenn Sie einen zweiten Parameter vergessen und zufällig angeben, ist dies kein Problem. Da die Batchdatei kein „% 2“ enthält, werden alle zusätzlichen Parameter ignoriert.
Die letzten Dinge, die in diesem Tipp behandelt werden, befassen sich mit der Zeit. Es gibt einen Befehl namens „TIME / T“, der die aktuelle Uhrzeit anzeigt. Es gibt auch einen Befehl namens TIMEOUT, der bewirkt, dass der Stapeljob für die angegebene Anzahl von Sekunden angehalten wird. Schließlich gibt es noch ein Sonderzeichen, das Sie in einer Batch-Datei verwenden können, nämlich das kaufmännische Und („&“). Es verkettet zwei (oder mehr) Befehle, die in derselben Zeile erscheinen. Verwenden Sie diese Befehle, um die aktuelle Uhrzeit anzuzeigen, fünf Sekunden zu warten und die neue Uhrzeit auf den Bildschirm zu schreiben. Die Batch-Datei sollte folgendermaßen aussehen:
@ECHO OFF REM This file demonstrates the use of a few command-line statements ECHO Hello. This is my Fun.bat file. DIR %1 | FIND "Dirlist" ECHO The current time is & TIME /T TIMEOUT 5 ECHO The new current time is & TIME /T
Das ist ein bisschen mehr über Batch-Dateien. Es gibt so viel mehr, was sie tun können, aber ich möchte abschätzen, wie viel Interesse es gibt, bevor ich viel mehr über sie schreibe. Wenn Sie dazu neigen, geben Sie bitte in den Kommentaren unten an, ob Sie weitere Informationen zu Batch-Dateien erhalten möchten.
Dieser Tipp (13103) gilt für Windows 7, 8 und 10.