Übersicht Stapeldateien

,

Klicke hier, um mehr zu erfahren

Was ist eine „Stapeldatei“?

Das englische Wort „Batch“ bedeutet „Stapel“. Die Großcomputer der 70er Jahre wurden mit Stapeln von Lochkarten gefüttert. Jede Lochkarte enthielt einen Befehl oder eine Zahl. Die Speicherung auf Lochkarten war aufwändig und fehleranfällig und wurde durch Disketten abgelöst. Jede Lochkarte wurde durch eine Textzeile in einer Datei auf Diskette ersetzt. Seitdem bezeichnet man eine Datei, die eine Folge von Befehlen enthält, als Batch-Datei, deutsch: Stapel-Datei.
Das Betriebssystem erkennt an der Dateierweiterung, wie es eine Datei zu behandeln hat. Stapeldateien müssen einen Dateinamen haben, der mit .BAT oder (ungebräuchlich) mit .CMD endet.

Stapeldateien sichtbar machen

Stapeldateien zählen zu den systemkritischen Dateien und werden ebenso wie .exe, .dll, .inf und viele andere sogenannte „bekannte“ Dateitypen in der Standardeinstellung ohne die Dateinamenerweiterungen angezeigt, was übrigens ein Sicherheitsrisiko ist. Um Stapeldateien erstellen und bearbeiten zu können, müssen die Dateinamenerweiterungen sichtbar sein. Deren Anzeige wird folgendermaßen eingeschaltet:
Starten Sie den Windows-Explorer. (Nur Windows 7: Wenn Sie die Menüzeile nicht sehen, drücken Sie auf F10.) Klicken sie auf „Extras“, dann auf „Ordneroptionen“ (siehe Bild). Unter „Ansicht“ finden Sie die Einstellung „Erweiterung bei bekannten Dateitypen ausblenden“. Entfernen Sie den Haken, dann „Übernehmen“ und „OK“.
Andere Möglichkeit: Nutzen Sie das Menüband vom Windows Explorer. Klicken Sie auf „Ansicht“ und setzen Sie vor „Dateinamenerweiterungen“ einen Haken.

Eine Stapeldatei erstellen

Nun können Sie eine Stapeldatei erstellen. Sie können die Datei auf dem Desktop erstellen oder in einem anderen Verzeichnis. Wechseln Sie in das gewünschte Verzeichnis. Klicken Sie mit der rechten Maustaste hinein, wählen Sie „Neu“ und „Textdatei“. Tragen Sie den gewünschten Dateinamen ein, wobei Sie das vorgeschlagene .TXT durch .BAT ersetzen müssen. Ignorieren Sie die Warnmeldung, dass die Datei unbrauchbar wird, ändern Sie trotzdem die Dateinamenerweiterung. Nun haben Sie eine Stapeldatei, noch ohne Inhalt. Das Symbol einer Stapeldatei ist ein Zahnrad, denn Sie befinden sich gewissermaßen im „Maschinenraum“ von Windows: Es gibt hier keine Assistenten oder „Sicherheitsleute“, keine Fragen „Wollen Sie wirklich …?“ und kein „rückgängig machen“. Arbeiten Sie sorgfältig!
Klicken Sie nun mit der rechten Maustaste auf den Dateinamen und wählen Sie „Bearbeiten“.
Jetzt können Sie die Befehlszeilen eingeben.
Es ist empfehlenswert, jedes Batch-Programm mit dem Befehl „Pause“ zu beenden. Dadurch schließt sich das Programmfenster am Programmende nicht, und Sie haben genügend Zeit nachzusehen, ob das Stapelprogramm wie gewünscht funktioniert hat oder ob es Fehlermeldungen gegeben hat.
Achten Sie unbedingt darauf, die letzte Befehlszeile mit „Enter“ abzuschließen, sonst wird der letzte Befehl eventuell nicht ausgeführt.

Eine Stapeldatei benutzen

Ein Stapelprogramm wird gestartet (ausgeführt), indem man in der Eingabeaufforderung dessen Namen eingibt und Enter drückt. Dabei muss die Erweiterung (.bat) nicht eingetippt werden. Mit Leerzeichen abgetrennt können bis zu neun Parameter übergeben werden, auf die von der Stapeldatei unter den Variablennamen %1 bis %9 zugegriffen werden kann.
Sie können die Stapeldatei auch doppelt anklicken, um sie zu starten. Es kann auch eine Verknüpfung mit einer Stapeldatei erstellt werden.
Auf eifert.net unter „Hilfen“ → „Software“ oder unter „Hilfen“ → „Datensicherung“ finden Sie die Anleitung „Eingabeaufforderung öffnen“ mit kommentierten Beispielen.

Einige spezielle Befehle für Batch-Dateien

In einer Stapeldatei können eine Vielzahl von Befehlen verwendet werden: dir für die Anzeige von Dateien, copy und xcopy zum Kopieren, cd und md für den Umgang mit Ordnern, net für die Verwaltung von Netzwerkverbindungen, format und del zum Löschen von Datenträgern und Dateien und viele mehr. Darüber hinaus gibt es Befehle, die nur in Stapeldateien sinnvoll verwendet werden können.
Mit einem Befehl IF kann man die Ausführung von Befehlen abhängig machen von Parametern oder vom Zustand des Computers. Beispiele:
IF NOT EXIST D:\RECHNUNG.DOC COPY C:\RECHNUNG.DOC D:\
kopiert eine Datei C:\RECHNUNG.DOC nur dann nach Laufwerk D:, wenn es sie dort nicht gibt.
IF "%DATE%" == "31.12.2021" GOTO JAHREND
führt eine „Sprunganweisung“ zur „Sprungmarke“ :JAHREND aus, wenn das Betriebssystem als Datum den 31.12.2021 meldet. Mit derartigen Sprunganweisungen werden Programmverzweigungen realisiert.

  • ECHO Hallo schreibt den Text „Hallo“ auf den Bildschirm. Mit dem Echo-Befehl können der Ablauf des Programms und die erreichten Ergebnisse protokolliert werden.
  • PAUSE stoppt die Ausführung der Stapelbefehle. Wird eine Taste gedrückt, geht es weiter mit dem nächsten Befehl.
  • CALL ruft eine andere Batchdatei wie ein Unterprogramm auf und ermöglicht die Rückkehr zum aufrufenden Hauptprogramm.

Windows hält einige Variablen bereit, die in Stapeldateien verwendet werden können, z. B. die Variablen TIME für die aktuelle Uhrzeit (auf hundertstel Sekunden genau) und DATE für das aktuelle Datum.

Will man die Arbeit einer Stapeldatei protokollieren, kann man die folgenden Befehle benutzen:

echo Start am %date% um %time%
echo Start am %date% um %time% >c:\Users\Klaus\Desktop\Bericht.txt
rem Hier können die Befehle der Stapeldatei folgen
echo Ende am %date% um %time% >>c:\Users\Klaus\Desktop\Bericht.txt

Der erste Befehl schreibt „Start am 26.05.2020 um 16:05:03,15“ auf den Bildschirm.
Der zweite Befehl erstellt eine Datei Bericht.txt auf dem Desktop des Benutzers Klaus und schreibt „Start am 26.05.2020 um 16:05:03,15“ dahinein. Eine möglicherweise vorhandene ältere Datei Bericht.txt wird ohne Warnung überschrieben.
Der letzte Befehl hängt einen Text „Ende am 26.05.2020 um 16:22:05,33“ an die vorhandene Datei Bericht.txt hinten an.

Eine weitere nützliche Variable USERPROFILE zeigt einen Pfad wie z. B. c:\Users\Klaus für den jeweiligen Nutzer an. Damit könnte man den letztgenannten Befehl tauglich machen für Benutzer, die nicht „Klaus“ heißen:
echo Ende am %date% um %time% >>%userprofile%\Desktop\Bericht.txt

Auf den nächsten Seiten werden die Befehle xcopy und robocopy vorgestellt. In den Stapeldateien der Kapitel 10 bis 12 werden diese und weitere Befehle verwendet, die dort auch erklärt werden, insbesondere copy, echo, rem, set, date, time und andere.

Diese Stapeldateien sollten nach einigen Anpassungen unmittelbar benutzbar sein. Wenn Sie meine Programme als Muster benutzen wollen, um Ihre eigene Datensicherung zu optimieren, finden Sie einige Erläuterungen und Beispiele im Anhang dieses Buches. Die Quelltexte der im Buch verwendeten Beispiele brauchen Sie nicht abtippen, Sie finden diese auf meiner Webseite eifert.net bei den Infos zum Buch „Datensicherung“.


 

Skills

Posted on

9. März 2021

Submit a Comment

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahren Sie mehr darüber, wie Ihre Kommentardaten verarbeitet werden .

Skills

Posted on

9. März 2021