MS-DOS Forum

MS-DOS Forum
Anleitungen, Referenz aller DOS Befehle, Batch Dateien
 
RegistrierenRegistrieren  LoginLogin

Neues Thema eröffnen   Neue Antwort erstellen    MS-DOS Forum Foren-Übersicht -> Batch Programmierung
Autor
Nachricht
matthias





Erstellen eines Makros
Verfasst am: 14.11.2008, 19:47

Zum Erstellen eines Makros geben Sie den Befehl doskey gefolgt vom Namen des Makros, einem Gleichheitszeichen und den Befehlen, die der Makro enthält, ein. Sie könnten beispielsweise den folgenden Befehl eingeben, um einen Makro namens ddir zu erstellen, der ein Verzeichnis im Breitformat anzeigt:

doskey ddir=dir /w

Wenn Sie dann an der Eingabeaufforderung ddir eingeben, führt MS-DOS den Makro aus und zeigt eine fünfspaltige Liste der Dateien im aktuellen Verzeichnis an. Weil der Makro im Arbeitsspeicher gespeichert ist, ist es unwichtig, welches Verzeichnis bei seiner Ausführung aktuell ist.

Um mehr als einen Befehl in einen Makro einzubeziehen, trennen Sie die einzelnen Befehle mit einem Dollarzeichen ($) und dem Buchstaben T voneinander. Zum Beispiel erstellt der folgende Befehl einen Makro namens cmp, der zuerst die -DOC-Dateien und danach die .BAK-Dateien im aktuellen Verzeichnis alphabetisch ordnet und auflistet:

doskey omp,,dir *-doc /o,n $t dir *-bak /o,n

Während Sie ein Makro erstellen und testen, ist es am einfachsten, den Befehl zur Definition des Makros an der Eingabeaufforderung einzugeben. Danach können Sie den Makro mit den Bearbeitungstasten von Doskey schnell ändern und neu definieren.

Da Makros im Arbeitsspeicher gespeichert sind, gehen die definierten Makros beim Ausschalten oder Neustarten Ihres Computers verloren. Wenn Sie also einen häufig verwendeten Makro erstellen, speichern Sie den Befehl, der den Makro definiert, in Ihrer AUTOEXEC.BAT-Datei. Auf diese Weise ist der Makro nach jedem Starten Ihres Systems verfügbar.

Zur Ausführung eines Makros geben Sie dessen Namen an der Eingabeaufforderung ein. Um beispielsweise den Makro ddir auszuführen, geben Sie an der Eingabeaufforderung ein:

ddir

Wenn der Makro Parameter besitzt, fügen Sie zwischen dem Makronamen und den Parametern ein Leerzeichen ein. Hierzu ein Beispiel: Sie haben einen Makro namens umspeich erstellt, der als Parameter den Namen der zu verschiebenden Datei und den Namen des Zielverzeichnisses erfordert. Um nun alle .TXT-Dateien aus dem aktuellen Verzeichnis in das Verzeichnis C:\TEXTDAT zu verschieben, würden Sie folgenden Befehl eingeben:

umspeich ..TXT c:\textdat

Zwischen der Eingabeaufforderung und dem Makronamen darf kein Leerzeichen stehen. Andernfalls erkennt MS-DOS den Namen nicht und zeigt die folgende Meldung an:

Befehl oder Dateiname nicht gefunden

Angenommen, Sie möchten einen Makro erstellen, der den gleichen Namen wie ein Befehl hat. So könnten Sie beispielsweise mit dem folgenden Befehl einen Makro namens dir erstellen, der den MS-DOS-Befehl dir ersetzt:

doskey dir=dir /w

Wenn ein Makro den gleichen Namen wie ein Befehl hat, führt MS-DOS den Makro statt des Befehls aus. Wenn Sie also an der Eingabeaufforderung dir eingeben, führt MS-DOS den Makro dir und nicht den Befehl dir aus.

Immer wenn Sie den Befehl dir statt des Makros dir verwenden möchten, können Sie zwischen der Eingabeaufforderung und dem Wort dir ein Leerzeichen eingeben. Dann erkennt MS-DOS dir nicht als einen Makronamen, sondern als einen Befehl.

Hinweis Makros können nicht innerhalb von Stapelverarbeitungsprogrammen ausgeführt werden, können jedoch innerhalb von Stapelverarbeitungsprogrammen definiert werden.
Bearbeiten eines Makros

Zum Bearbeiten eines Makros bearbeiten Sie den Befehl, der den Makro erstellt hat. Wenn der Makro in einem Stapelverarbeitungsprogramm definiert wird, können Sie das Stapelverarbeitungsprogramm bearbeiten und es danach erneut ausführen. Wenn die Makrodefinition einer der in Doskey gespeicherten Befehle ist, können Sie den Makrobefehl wieder anzeigen, ihn mit den Bearbeitungstasten von Doskey bearbeiten und dann die EINGABETASTE drücken, um das Bearbeiten zu beenden.

Speichern eines Makros

Für das Speichern von Makros, die im Arbeitsspeicher bereits vorhanden sind, verwenden Sie den Befehl doskey mit der Option /macros, einem Größer-als-Zeichen

(>) und einem Dateinamen. Im folgenden Beispiel werden die Namen und Inhalte der Makros, die sich gegenwärtig im Arbeitsspeicher befinden, in der Datei MAKROS.BAT gespeichert:

doskey /macros > makros.baC

Wenn Sie den Befehl doskey am Beginn eines jeden Makros, der in der Datei MAKROS.BAT gespeichert wird, einfügen, können Sie durch Ausführen des Stapelverarbeitungsprogramms die Makros in den Arbeitsspeicher laden. Hierzu ein Beispiel: Angenommen, Sie haben die drei folgenden Makros erstellt und sie in der Datei MAKROS.BAT gespeichert:

ddir=dir /oe /p

mv=copy $1 $2 $t del $1 where=dir /s /p $1:\*.$2

Wenn Sie möchten, dass diese Makros bei jedem Starten Ihres Systems verfügbar sind, fügen Sie zunächst zu Beginn jeder Zeile den Befehl doskey hinzu:

doskey ddir=dir /oe /p

doskey mv=copy $1 $2 $t del $1 doskey where=dir /s /p $1,\.-$2

Bei jedem Ausführen des Stapelverarbeitungsprogramms lädt Doskey diese drei Makros in den Arbeitsspeicher. Sie können dieses Stapelverarbeitungsprogramm auch mit dem Befehl call von Ihrer Datei AUTOEXEC.BAT aufrufen lassen.

Löschen eines Makros

Zum Löschen eines Makros geben Sie den Befehl doskey gefolgt vom Namen des zu löschenden Makros und eines Gleichheitszeichens ein. Um beispielsweise den Makro ddir zu löschen, würden Sie folgenden Befehl eingeben:

doskey ddir=

Dann löscht Doskey den Makro aus dem Arbeitsspeicher. Zum Löschen aller Makros drücken Sie ALT+F10.

Hinweis Das Löschen von Makros gibt zwar Speicherplatz für andere Makros frei, gibt den Speicherplatz jedoch nicht wieder an den Befehlspuffer zurück.
_________________
 
Neues Thema eröffnen   Neue Antwort erstellen    MS-DOS Forum Foren-Übersicht -> Batch Programmierung

Tags: makro erstellen, makros, doskey

 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Der Befehl Restore funktioniert nicht 1216 08.12.2008, 08:39
Keine neuen Beiträge Der Befehl Undelete funktioniert nicht 1929 01.12.2008, 09:32
Keine neuen Beiträge eine gelöschte MS-DOS Datei wiederherstellen 4340 09.11.2008, 11:47
Keine neuen Beiträge Die Meldung "Packed File Corrupt" erscheint 1323 21.11.2008, 06:30
Keine neuen Beiträge MS-DOS wird nicht im oberen Speicherbereich ausgeführt 1594 09.11.2008, 11:40
 



[ Time: 0.2545s ][ Queries: 59 (0.0384s) ][ GZIP on - Debug on ]