Analog zu »IF EXIST Datei« gibt es bisher keine Möglichkeit, festzustellen, ob ein bestimmtes Verzeichnis existiert. Kopier-Anweisungen in Stapeljobs landen z. B. oftmals in falschen Verzeichnissen und überschreiben gleichnamige Dateien, weil der Anwender sich nicht haargenau so verhalten hat, wie es die Batch-Datei vorschreibt. ISDIR.DEB hilft, solche Fehler zu vermeiden. Das Programm speichert das aktuelle Verzeichnis des angegebenen Laufwerks vorübergehend ab und versucht anschließend per »CD« in das zu überprüfende Verzeichnis zu wechseln. Danach stellt ISDIR das ursprüngliche Directory wieder her und übergibt das Ergebnis im Errorlevel. Das zu verifizierende Verzeichnis übergeben Sie analog zum CD-Befehl als Parameter. »ISDIR D:.« oder »ISDIR D:\« kann sogar feststellen, ob das Laufwerk D überhaupt existiert.
Name: | ISDIR.DEB |
Funktion: | Überprüft, ob ein bestimmtes Verzeichnis existiert. |
Übersetzung: | DEBUG <ISDIR.DEB |
Prüfsumme: | FB21 |
Anwendung: | ISDIR [Lw:]VerzeichnisIF ERRORLEVEL # # = 255: Laufwerk existiert nicht # = 3: Verzeichnis existiert nicht # = 0: Verzeichnis existiert
andere Werte: sonstige DOS-Fehler (siehe Anhang $$$$$) |
Einschränkungen: | ./. |
A CMP AL,FF ;100 JZ 13D ;102 MOV BX,[80] ;104 MOV By[BX+E081],0 ;108 MOV DL,[5C] ;10D CMP DL,0 ;111 JA 11E ;114 MOV AH,19 ;116 INT 21 ;118 MOV DL,AL ;11A INC DL ;11C MOV SI,145 ;11E ADD [SI-3],DL ;121 MOV AH,47 ;124 INT 21 ;126 MOV DX,82 ;128 MOV AH,3B ;12B INT 21 ;12D JB 133 ;12F MOV AL,0 ;131 MOV [13E],AL ;133 MOV DX,142 ;136 MOV AH,3B ;139 INT 21 ;13B MOV AX,4CFF ;13D INT 21 ;140 DB "@:\" RCX 45 NISDIR.COM W Q
Quelle: 200 Utilities für PC-/MS-DOS von Gerhard Schild und Thomas Jannot