Aktuellen Pfad in DOS editieren

Aus den flexiblen Eingabhilfen der vorhergehenden Seiten resultierend können wir Ihnen nun einen kurzen Tip präsentieren, der selbst in anspruchsvollen Fachzeitschriften nur über seitenlange Listings realisiert wurde: Mit PATHEDIT.BAT können Sie die Environment-Variable PATH editieren, wodurch sich der PC kurzfristig – ohne aufwendiges Neusetzen mit »SET PATH= …« – auf einen neuen Suchpfad vorbereiten läßt. Das Batch-Programm können Sie natürlich für jede andere Environment-Variable anpassen. Ihrer Fantasie sind dabei keine Grenzen gesetzt.

Name: PATHEDIT.BAT
Funktion: Gibt Ihnen die Möglichkeit, die Environment-Variable PATH zu editieren.
Übersetzung: ./.
Prüfsumme: ./.
Anwendung: PATHEDIT
Einschränkungen: Setzt unsere übersetzten Tips SAY- und INPUT.DEB voraus. Funktioniert in dieser Version nur ab DOS 3.3.
@ECHO OFF
SAY SET PATH=>TMP.BAT
SAY PATH=
INPUT %PATH%>>TMP.BAT
ECHO.
CALL TMP
DEL TMP.BAT
PATH

Außerdem wollen wir Ihnen zeigen, daß sich durch geschickte Konstruktion von Stapeldateien ähnliche Effekte duchaus auch ohne die CALL-Anweisung realisieren lassen. PATHED32.BAT ist ein Pfadeditor, der auch unter DOS-Versionen vor 3.3 läuft. Er verwendet einen Parameter, um sich selbst rekursiv aufzurufen. Beim ersten Start nimmt PATHED32 die Eingabe entgegen und erzeugt eine temporäre Datei, die den Suchweg ändert. Im Anschluß daran ruft diese Datei ihrerseits wiederum PATHED32 auf, diesmal mit dem Dummy-Parameter »2«. Der veranlaßt die Stapeldatei, die zweite Hälfte der Aktion auszuführen. Sie löscht die Temporärdatei und zeigt zur Kontrolle das Ergebnis, den gesetzten Suchpfad, an.

Name: PATHED32.BAT
Funktion: Pfad-Editor für DOS-Versionen, die älter als 3.3 sind.
Übersetzung: ./.
Prüfsumme: ./.
Anwendung: PATHED32
Einschränkungen: ./.
ECHO OFF
IF %1!==2! GOTO WEITER
SAY PATH=
SAY SET PATH=>TMP.BAT
INPUT %PATH%>>TMP.BAT
ECHO.>>TMP.BAT
ECHO PATHED32 1»TMP.BAT
ECHO.
TMP
:WEITER
DEL TMP.BAT
PATH

Quelle: 200 Utilities für PC-/MS-DOS von Gerhard Schild und Thomas Jannot