Kommandozeilen-Programm deletefile  
 

Navigation: This page in English - Hauptseite - Inhalt


Programm oder Batch-Datei herunterladen Betriebssystem Beschreibung
deletefile.exe

Version 1.00 

Windows
(95/98/ME/
NT/2000/XP)
Das DEL-Kommando von Windows hat einen kleinen Fehler, zumindest unter Windows NT, Service Pack 6a. Unter Windows 2000 scheint es zu funktionieren.
DEL liefert weder einen richtigen ERRORLEVEL zurück, noch behandelt es die Standardfehler- bzw. Standardausgabe richtig (stderr und stdout). Somit läßt sich auf einfachem Wege nicht feststellen, ob eine Datei wirklich gelöscht werden konnte.

Obwohl ein Kommando wie
DEL /Q datei.test
in der Regel wunderbar funktioniert, läßt sich dennoch nicht feststellen, ob die Löschung tatsächlich stattfindet.
Bitte beachten Sie, daß der Parameter /Q die Nachfrage vor dem Löschen unterdrückt. Es gibt keine hundertprozentige Methode, um sicherzugehen, daß die Datei datei.test wirklich gelöscht wurde.

Die folgende Sequenz arbeitet unter Windows NT leider nicht zufriedenstellend genug:

DEL /Q datei.test 2> delfehler.txt
IF ERRORLEVEL 1 ECHO Fehler.

DEL /Q \\server\datei.test 2> delfehler.txt
IF ERRORLEVEL 1 ECHO Fehler.

Würde das Kommando richtig arbeiten, dann beträge die Dateigröße von delfehler.txt immer dann 0 Byte, wenn die Datei datei.test erfolgreich gelöscht werden konnte. Auf der anderen Seite würde delfehler.txt die Fehlermeldung von DEL (stderr) beinhalten, falls was schiefgelaufen ist. Außerdem müßte der Text "Fehler." auf die Standardausgabe (stdout) ausgegeben werden.
Unter Windows 2000 funktioniert das tatsächlich so, nicht aber unter Windows NT.

Das Kommandozeilen-Programm deletefile.exe hilft dagegen. Es ist ein Ersatz für DEL /Q.
Verwenden Sie stattdessen die folgenden Sequenzen:

DeleteFile datei.test 2> delfehler.txt
IF ERRORLEVEL 1 ECHO Fehler.

DeleteFile \\server\datei.test 2> delfehler.txt
IF ERRORLEVEL 1 ECHO Fehler.

Jede weitere Funktionalität muß vom Anwender selbst zur Verfügung gestellt werden, d.h. durch eine Batch-Datei.
Wenn Sie zum Beispiel den Parameter /F des DIR-Kommandos benötigen (erzwingt das Löschen von schreibgeschützten Dateien), so müssen Sie das selber mit einbauen, zum Beispiel durch die nachfolgend aufgeführten Zeilen.

SET fName=datei.test
ATTRIB -R %fName%
DeleteFile %fName% 2> delfehler.txt
IF ERRORLEVEL 1 ECHO Fehler.
 

Navigation: This page in English - Hauptseite - Inhalt
 
 

---

Alle Skripten (Batch-Dateien) und Programme bereitgestellt von www.wabel.de.
Wagner Belmer GbR (WaBel)

(C) 2003 Thomas Belmer

ASAMnet - - PMView - Allee Parkhotel Maximilian - Autospenglerei Belmer - Email - Heimseite von Thomas - Bieruhr - Panoramas - Amberg live