Batch-Programmierung: Allgemeine Information

Aus Wikibooks
Zur Navigation springen Zur Suche springen



In diesem Buch behandelte (und nicht behandelte) Skriptsprachen[Bearbeiten]

In diesem Buch geht es primär um das Erstellen von Batchdateien/Skripten für den Microsoft Windows Kommandozeileninterpreter (cmd.exe für Windows XP / Vista / 7). Informationen zu Batchdateien unter DOS (und auf DOS basierenden Windowsversionen wie z.B. Windows 98) werden teilweise miterläutert. Unterschiede zur Verwendung der Befehle in den unterschiedlichen Windowsversionen werden unter der jeweiligen Befehlsbeschreibung erläutert.

Andere Betriebssysteme bieten vergleichbare und teilweise wesentlich mächtigere Funktionen (wie z. B. die in der Linux-Welt weit verbreitete Bash oder AppleScript für den Mac). Auch für Windows gibt es Möglichkeiten, mächtigere Skripte zu erstellen, hierzu kann der Windows Script Host oder das Windows PowerShell verwendet werden.

Was sind und wie funktionieren Batchprogramme?[Bearbeiten]

Batchdateien oder Batchprogramme (häufig mit Stapelverarbeitungsprogramme oder kurz Stapelprogramm übersetzt) sind meist kurze Dateien, die Befehle der Kommandozeile der Reihe nach abarbeiten. Batchprogrammierung erfüllte die grundlegenden Anforderungen an eine Programmiersprache wie z.B. if, if not und while. Da Batch sich in den Bereich Shellscripting einordnen lässt, kann man von einer interpreterbasierten Skriptsprache reden. Das heißt, dass die im Editor erstellte Textdatei nicht mit einem Compiler einmal in Maschinensprache übersetzt und in einer ausführbaren Binärdatei im *.exe Format gespeichert, sondern bei jedem Aufruf durch einen Interpreter zur Laufzeit in ein für den Computer verständliches Format übersetzt wird. Ein Texteditor wie MS Notepad, den Windows von Haus aus mitbringt, reicht vollkommen aus, um Batchprogramme zu schreiben. Batchprogrammierung ist speziell für die Steuerung des Betriebssystems gedacht, für die Entwicklung von Anwendungen ist sie nicht geeignet. Hierzu verwendet man Sprachen wie C/C++ und Java (nicht zu verwechseln mit JavaScript!!).

Nutzung von Batchprogrammen[Bearbeiten]

Viele wiederkehrende Installations- und Verwaltungsaufgaben, die man traditionell mit Tastatur und Maus ausführt, lassen sich mit Stapeldateien ausführen. Hat man genügend Kommentarzeilen in die Batchdatei eingefügt, genügt der Ausdruck der Stapeldatei meist als Dokumentation.

Kommandozeilenbefehle und Batchdateien sind keine veraltete Technologie. Auf Wunsch vieler Systemadministratoren hat Microsoft dafür gesorgt, dass Windows Server 2003 vollständig von der Kommandozeile installiert und administriert werden kann, ohne die Maus zu benutzen.

Die Begriffe "Stapelprogramm" und "Stapelverarbeitung" rühren aus der Zeit her, als Permanentspeicher auf Magnetplatten sehr teuer war. Zu dieser Zeit begab man sich mit einem Stapel Lochkarten aus Pappe, auf denen sich das Programm und die Daten in gestanzter Form befanden, zum Rechenzentrum und übergab dem Operator seinen Stapel. Die Stapel aller Benutzer wurden gesammelt und dann sequentiell an den Rechner übergeben. Nach einiger Zeit konnte man sich dann die (meist ausgedruckten) Ergebnisse abholen.

Wie erstelle ich eine Batchdatei?[Bearbeiten]

Wie bereits gesagt, reicht ein einfacher Editor aus. Empfehlen kann man guten Gewissens den quelloffenen und kostenlosen Notepad++-Editor, als bessere Alternative zu MS Notepad.

Unter DOS bis Windows 98:

Speichern Sie dann die Datei mit der Endung *.bat ab. Anschließend müssen Sie nur die Datei starten: Dies können Sie entweder direkt in Windows oder indem Sie in der Eingabeaufforderung in das entsprechende Verzeichnis wechseln und den Dateinamen eingeben.

Ab Windows NT / 2000 / XP / Vista / 7:

Für Windows NT-kompatible Betriebssysteme gibt es seit Windows 2000 auch Batchdateien mit der Endung *.cmd. Diese werden genau wie Batchdateien mit der Endung *.bat verarbeitet bzw. ausgeführt. Nach allgemeiner Konvention sollte man bei Batchdateien erstellt für Windows NT die Endung "CMD" wählen. Die Endung *.cmd wurde ursprünglich aus Kompatibilitätsgründen zu OS/2, einem Betriebssystem, das MS ursprünglich in Kooperation mit IBM entwickelte, mit Windows NT 3.x eingeführt.

Weiterführende Informationen und Links[Bearbeiten]

  • Allgemeine Informationen: Wikipedia: batch
  • Infos zur cmd.exe: Wikipedia: cmd.exe
  • Die für Windows XP verfügbaren Kommandos können auch im Hilfesystem von Windows direkt eingesehen werden:
    • START - Hilfe und Support
    • "Befehlszeilenreferenz A-Z" in das Suchfeld eintragen. (Für englisches Windows "Command-line reference A-Z")