matschi11
Goto Top

Batchscipt löscht alle Dateien im Windows-Ordner

Windows XP pro SP 3

Hallo allerseits,
ich verwende schon seit längerem folgende Batchdatei zum schnellen Löschen temporärer Dateien ohne Probleme:

C:
cd oldmsdos
del /f/s/q *.* "C:\Dokumente und Einstellungen\admin\Lokale Einstellungen\Temp"
del /f/s/q *.* "C:\Dokumente und Einstellungen\admin\Lokale Einstellungen\Temporary Internet Files"
del /f/s/q *.* "C:\Dokumente und Einstellungen\admin\Lokale Einstellungen\Verlauf"
del /f/s/q *.* "C:\Dokumente und Einstellungen\admin\Recent"

Seit gestern werden allerdings zusätzlich alle Dateien im Ordner C:\Windows gelöscht und ich muss anschließend mein System wieder herstellen.
Hat jemand eine Idee für die Ursache?

Content-ID: 120526

Url: https://administrator.de/contentid/120526

Ausgedruckt am: 22.11.2024 um 10:11 Uhr

empreality
empreality 15.07.2009 um 14:35:25 Uhr
Goto Top
Die Syntax ist ja auch für dein Vorhaben gefährlich, denn es werden alle Dateien im angebenen Pfad UND im aktuellen Ordner gelöscht.

Angenommen du startet das Batch nun mit c:\Windows als Arbeitspfad

C: <- ändert nichts, da wir schon auf C: sind
cd oldmsdos <- gibt eine fehlermeldung aus dass oldmsdos nicht gefunden wurde
del /f/s/q *.* "C:\Dokumente und Einstellungen\admin\Lokale Einstellungen\Temp" - löscht alle Dateien im aktuellen Ordner

machs besser so:

CD /D C:\OLDMSDOS

und dann
del /f/s/q "C:\Dokumente und Einstellungen\admin\Lokale Einstellungen\Temp"

Warum überhaupt der Wechsel in den oldmsdos pfad, arbeitest doch eh mit absoluten Pfadangaben ?!
matschi11
matschi11 15.07.2009 um 14:42:18 Uhr
Goto Top
danke für die schnelle Antwort. Was bewirkt der Parameter /D?
Und: Welchen Parameter muss ich weglassen, damit NICHT die Dateien im aktuellen Verzeichnis (also jenes, in dem sich das Script aktuell vorfindet) gelöscht werden?
60730
60730 15.07.2009 um 14:45:33 Uhr
Goto Top
Servus,

das beste - nicht nur wegen dem Problem - ist benutze das Script nicht, wenn du Admin bist!
Bzw. lege dir einen Benutzer zu, der zum arbeiten da ist und Software dann als Admin installieren.

Denn ich schlussfolgere aus dieser Zeile C:\Dokumente und Einstellungen\admin\Lokale Einstellungen\Temporary Internet Files - und der Tatsache, dass du im Windows Ordner löschen kannst - du surfst mit Adminrechten.

Was bewirkt der Parameter /D?
die Antwort findest du - wenn du dir /? in einer Dosbox eingibst.

Gruß
empreality
empreality 15.07.2009 um 14:48:33 Uhr
Goto Top
ei du lässt das *.* einfach weg, siehe oben

CD /? sagt das hier:

Verwenden Sie die /D-Option, um zusätzlich zum Wechseln des Verzeichnisses
auch das aktuelle Laufwerk zu wechseln.
matschi11
matschi11 15.07.2009 um 15:09:23 Uhr
Goto Top
"... C: <- ändert nichts, da wir schon auf C: sind" ...

Also eigentlich bin ich doch immer in C:\Dokumente und Einstellungen\admin, wenn ich die Kommandozeile starte. Der Befehl C: soll bewirken, zunächst mal ins Wurzelverzeichnis zu wechseln, um anschließend in den Ordner \oldmsdos zu wechseln, der einen Haufen DOS-Befehle bzw. Programme enthält, die ich evtl. bei anderen Scripten benötige.

"cd oldmsdos <- gibt eine fehlermeldung aus dass oldmsdos nicht gefunden wurde"

Wieso? Der Ordner existiert doch.

"machs besser so: CD /D C:\OLDMSDOS"
"Verwenden Sie die /D-Option, um zusätzlich zum Wechseln des Verzeichnisses
auch das aktuelle Laufwerk zu wechseln."

Wieso - ich will das aktuelle LW doch gar nicht wechseln - es spielt sich doch alles auf C ab?

"ei du lässt das *.* einfach weg, siehe oben"

Aber dann wird doch gar nichts gelöscht, da ja keine konkrete Datei benannt wird.
empreality
empreality 15.07.2009 um 15:23:00 Uhr
Goto Top
Der Befehl C: soll bewirken, zunächst mal ins Wurzelverzeichnis zu wechseln
Tut er aber nicht, damit wechselst du nur das Laufwerk.

Das was du willst passiert mit
CD C:\

Und um sicherzugehen eben mit /D als Parameter, falls du doch mal auf einem anderen LW bist.

Wieso? Der Ordner existiert doch.
Nicht wenn du nicht vorher in das Wurzelverz wechselst, s.o.

Aber dann wird doch gar nichts gelöscht, da ja keine konkrete Datei benannt wird.
Doch, probiers doch einfach aus
matschi11
matschi11 15.07.2009 um 15:39:13 Uhr
Goto Top
o.k.: habs ausprobiert, Systemdateien in C:\Windows werden also schonmal nicht mehr gelöscht. Danke
Aber die Dateien, die ich eigentlich löschen will auch nicht.
So sieht mein Script jetzt aus:

CD /D C:\oldmsdos
del /f/s/q "C:\Dokumente und Einstellungen\admin\Lokale Einstellungen\Temp"
del /f/s/q "C:\Dokumente und Einstellungen\admin\Lokale Einstellungen\Temporary Internet Files"
del /f/s/q "C:\Dokumente und Einstellungen\admin\Lokale Einstellungen\Verlauf"
del /f/s/q "C:\Dokumente und Einstellungen\admin\Recent"

copy "C:\Dokumente und Einstellungen\admin\Lokale Einstellungen\Anwendungsdaten\Microsoft\Outlook\outlook.pst" D:\Backup\Outlook

Alle Dateien in den Ordnern Temp, Temporary Internet Files und Verlauf existieren lustig weiter.
Übrigens müssten in Temp auch dort herumliegende Ordner weggeschrubbt werden.
empreality
empreality 15.07.2009 um 15:43:10 Uhr
Goto Top
doch doch das funktioniert so...

schreibzugriff auf die dateien?
matschi11
matschi11 15.07.2009 um 16:16:55 Uhr
Goto Top
hmm - war ein Häkchen vor "schreibgeschützt" - das habe ich entfernt, anschließend gebatcht - gleiches Ergebnis wie vorher. Und - der Schreibschutz war auch wieder aktiviert.
empreality
empreality 15.07.2009 um 16:20:12 Uhr
Goto Top
dann greift da ein programm drauf zu und erstellt die dateien mit dem schreibschutz wieder neu
matschi11
matschi11 15.07.2009 um 16:23:18 Uhr
Goto Top
unnu? Welches Programm soll das sein, was kann man machen?
60730
60730 15.07.2009 um 18:51:49 Uhr
Goto Top
Zitat von @matschi11:
unnu? Welches Programm soll das sein, was kann man machen?

Das gesuchte Program heißt Brain und je höher die Version, desto eher wird ein Schuh daraus.

Zitat von @60730:
Servus,

das beste - nicht nur wegen dem Problem - ist benutze das Script
nicht, wenn du Admin bist!
Bzw. lege dir einen Benutzer zu, der zum arbeiten da ist und Software
dann als Admin installieren.

Denn ich schlussfolgere aus dieser Zeile C:\Dokumente und
Einstellungen\admin\Lokale Einstellungen\Temporary Internet Files
-
und der Tatsache, dass du im Windows Ordner löschen kannst - du
surfst mit Adminrechten.

> Was bewirkt der Parameter /D?
die Antwort findest du - wenn du dir /? in einer Dosbox eingibst.

>Aber dann wird doch gar nichts gelöscht, da ja keine konkrete Datei benannt wird.

Bitte - einmal /? hinter jedem befehl und jede deiner Nachfragen hätte sich erübrigt.

Das du mit keinem Satz - den Tipp mit den Adminrechten irgendwie erwähnt hast und mit der Lethagrie - wie du an das Problemn dran gehst ...

Es gibt manche von uns, die via Administrator.de hierher gelangt sind - das Forum ist aber auch unter Benutzer.de zu erreichen.

Versuche zu verstehen, wie ein Benutzer in den Adminstatus kommt - wenn er Adminrechte auf seienem System hat/haben will.

Mit konstruktiver Kritik kannst du hoffentlich umgehen.

Gruß