Verwenden von Doskey zum Arbeiten mit Makros Verfasst am: 09.11.2008, 16:43
Ein Makro ist eine Gruppe von Befehlen, die Sie ausführen können, indem Sie den Namen des Makros eingeben. Ein Makro ähnelt sehr stark einem Stapelverarbeitungsprogramm. Beide enthalten Gruppen von Befehlen, die Sie durch die Eingabe eines Namens ausführen können. Allerdings unterscheiden sich Makros von Stapelverarbeitungsprogrammen in folgenden Einzelheiten:
Makros werden im Arbeitsspeicher gespeichert, Stapelverarbeitungsprogramme werden auf einem Datenträger (Diskette oder Festplatte) gespeichert. Da Makros im Arbeitsspeicher vorhanden sind, können sie viel schneller als
Stapelverarbeitungsprogramme und von jedem beliebigen Verzeichnis ausgeführt werden. Andererseits gehen die Makros im Arbeitsspeicher beim Neustarten Ihres Computers verloren, während Stapelverarbeitungsprogramme auf Diskette oder Festplatte dadurch nicht gelöscht werden. Makros nehmen auch Speicherplatz in Ihrem Befehlspuffer ein.
Ein Stapelverarbeitungsprogramm erstellen Sie, indem Sie Befehle in einer Datei speichern. Zur Erstellung eines Makros fügen Sie Befehle zu einer Makrodefinition zusammen. In einem Stapelverarbeitungsprogramm geben Sie die einzelnen Befehle auf je einer eigenen Zeile ein. In Makros geben Sie alle Befehle in dieselbe Zeile ein und trennen sie durch bestimmte Zeichen voneinander. Ein Makro darf maximal 127 Zeichen lang sein.
Ein Stapelverarbeitungsprogramm können Sie anhalten, indem Sie STRG+C einmal drücken. In einem Makro müssen Sie STRG+C für jeden Befehl des Makros je einmal drücken. Bei jedem Drücken von STRG+C in einem Makro hält MS-DOS den momentan ausgeführten Befehl an.
Sowohl in Stapelverarbeitungsprogrammen als auch in Makros können Sie ersetzbare Parameter verwenden. In Stapelverarbeitungsprogrammen lauten diese Parameter jedoch %1 bis %9, während sie in Makros $1 bis $9 lauten. Außerdem sind die in Makros verwendeten Umleitungszeichen anders als die in Stapelverarbeitungsprogrammen und MS-DOS-Befehlen verwendeten Zeichen.
In einem Stapelverarbeitungsprogramm können Sie mit dem Befehl goto zu einer anderen Position innerhalb des Programms gelangen. Außerdem können Sie aus einem Stapelverarbeitungsprogramm heraus andere Stapelverarbeitungsprogramme starten. In einem Makro dagegen können Sie keine goto-Befehle verwenden, und es ist auch nicht möglich, aus einem Makro heraus andere Makros zu starten.
Aus einem Makro heraus können Sie ein Stapelverarbeitungsprogramm ausführen; aus einem Stapelverarbeitungsprogramm heraus können Sie aber keinen Makro ausführen. Sie können jedoch einen Befehl verwenden, der einen Makro innerhalb eines Stapelverarbeitungsprogramms erstellt.
Innerhalb eines Makros können Sie nicht den Befehl echo off verwenden, um die Anzeige von Befehlen auszublenden, während sie MS-DOS ausführt.
Innerhalb eines Makros können Sie eine Umgebungsvariable definieren; Sie können diese Umgebungsvariable nicht im Makro verwenden. So könnten Sie beispielsweise für das Verzeichnis C:\DOS die Umgebungsvariable ABC setzen (set abc=c:\dos). Sie könnten die Umgebungsvariable ABC jedoch nicht mit anderen Befehlen verwenden (wie beispielsweise dir abc). In einem Stapelverarbeitungsprogramm könnten Sie dies durchführen. Sie können außerdem keine Umgebungsvariablen verwenden, die an einer anderen Stelle definiert wurden. Weil Sie zuerst einen Makrodefinitionsbefehl ausführen müssen, um einen Makro in den Arbeitsspeicher zu laden, können Sie Makros am besten verwenden, wenn Sie die Definitionsbefehle für die am häufigsten ausgeführten Makros in ein Stapelverarbeitungsprogramm eingeben. Zur Bereitstellung der Makros führen Sie dann das Stapelverarbeitungsprogramm aus. _________________