Seite 1 von 3

desktop.ini löschen

Verfasst: 03.08.2020, 17:37
von Andi
Hallo...

...ist es möglich eine Batch Datei zu schreiben um aus Ordnern mit vielen Unterordner (über 1000) die desktop.ini Datei zu löschen?

LG Andi

Re: desktop.ini löschen

Verfasst: 03.08.2020, 17:47
von GwenDragon
Auf eigene Gefahr:

Code: Alles auswählen

cd /D D:\Mein\Ord\Ner\
REM Das nächste löscht ohne Rückfrage!
FORFILES /S /M desktop.ini /C "cmd /c del @file"
https://www.windowspro.de/wolfgang-somm ... n-anwenden
https://docs.microsoft.com/de-de/window ... s/forfiles
https://ss64.com/nt/forfiles.html

Re: desktop.ini löschen

Verfasst: 04.08.2020, 10:17
von Holgi
ich wollte das Script gerade mal für mich verwenden, aber bei mir funzt es nicht.
Zunächst dachte ich, es liegt daran, dass die desktop.ini eine versteckte Datei ist.
Deshalb habe ich mal im Download-Ordner eine Datei namens Desktop.ink angelegt.
Dann das Script entsprechend diesem Namen abgeändert.
Der richtige Ordner wird nach der ersten Zeile noch angesteuert (hier: User\Downloads).
Es kommt jedoch so oder so immer die Meldung:
"FEHLER: Dateien vom Typ "desktop.ink" wurden nicht gefunden."
Woran kann das liegen?

hier meine Zeilen:
cd /D "C:\Users\DARTH VADER\Downloads\"
pause
REM Das nächste löscht ohne Rückfrage!
FORFILES /S /M desktop.ink /C "cmd /c del @file"
pause

Re: desktop.ini löschen

Verfasst: 04.08.2020, 10:46
von Ben
Es muss auch so lauten anstatt @file muss man @path benutzen.

Code: Alles auswählen

cd /D D:\Mein\Ord\Ner\
REM Das nächste löscht ohne Rückfrage!
FORFILES /S /M desktop.ini /C "cmd /c del @path"
@file = "dektop.ini"
@path = "D:\Mein\Ord\Ner\desktop.ini"
Bei ein weiteren fund in einem Unterordner wäre es dann z.B. @path = "D:\Mein\Ord\Ner\TEST\desktop.ini"

Re: desktop.ini löschen

Verfasst: 04.08.2020, 10:55
von GwenDragon
Autsch. Mein Versäumnis. Ja, das muss @path sein.

Re: desktop.ini löschen

Verfasst: 04.08.2020, 11:07
von Holgi
gleich mal abgeändert und ausprobiert.
Jetzt scheint das Script zwar die Dateien zu finden, löscht sie aber nicht.
Hier die Ausgabe:

Code: Alles auswählen

C:\Users\DARTH VADER\Documents>cd /D "C:\Users\DARTH VADER\Downloads\"
C:\Users\DARTH VADER\Downloads>pause
Drücken Sie eine beliebige Taste . . .
C:\Users\DARTH VADER\Downloads>REM Das n├ñchste l├Âscht ohne R├╝ckfrage!
C:\Users\DARTH VADER\Downloads>FORFILES /S /M desktop.ini /C "cmd /c del @path"
C:\Users\DARTH VADER\Downloads\desktop.ini konnte nicht gefunden werden
C:\Users\DARTH VADER\Downloads\WinRAR\desktop.ini konnte nicht gefunden werden
C:\Users\DARTH VADER\Downloads>pause
Drücken Sie eine beliebige Taste . . .
die Desktop.ini(s) sind tatsächlich in den angegebenen Download Ordnern vorhanden.
Script als Admin ausgeführt.

Re: desktop.ini löschen

Verfasst: 04.08.2020, 11:12
von alles
Also ich habe mal eine andere Methode gelesen, wobei ich nicht beurteilen kann, ob es auch wirklich funktioniert.

In den Eigenschaften auf den Reiter "Sicherheit". Beim Benutzer "SYSTEM" die Berechtigungen "Bearbeiten" und einen Haken bei "Schreiben" "Verweigern" setzen. Dann kann man die Datei löschen und es soll nicht mehr erstellt werden.

Für mich klingt das unlogisch, daher habe ich es nicht weiter verfolgt. Denn wie soll man den Zugriff von einer Datei kontrollieren können, die es nicht mehr gibt !¿!

Re: desktop.ini löschen

Verfasst: 04.08.2020, 11:26
von Holgi
also wenn die zu löschenden Dateien nicht versteckt sind, dann funktioniert auch folgendes Script:

Code: Alles auswählen

cd /D "C:\Users\DARTH VADER\"
pause
REM Das nächste löscht ohne Rückfrage!
del desktop.ink /f /s /q
pause

Re: desktop.ini löschen

Verfasst: 04.08.2020, 11:30
von Ben
Festeckte Dateien können auch so gelöscht werden

Code: Alles auswählen

cd /D D:\Mein\Ord\Ner\
REM Das nächste löscht ohne Rückfrage!
FORFILES /S /M desktop.ini /C "cmd /c del /A:H @path"
Aber auch nur bei Dateien auf die man auch Zugriffsberechtigung hat.

Re: desktop.ini löschen

Verfasst: 04.08.2020, 12:03
von Holgi
dan dürfte das jetzt die Lösung sein, nach der Andi gesucht hat. :)

Re: desktop.ini löschen

Verfasst: 04.08.2020, 14:30
von Holgi
funktioniert prima!
Eine Frage die sich anschließt:
gibt es so etwas auch für ganze Ordner?
Also es sollen in einem bestimmten Verzeichnis (sagen wir mal im Downloadordner) in all dessen Unterverzeichnen ein ganz bestimmter Ordner - der öfter vorkommt, aber nicht benötigt wird - gelöscht werden. Dieser bestimmte Ordner enthält wiederum Dateien (und ggf. weitere Unterverzeichnisse).

Re: desktop.ini löschen

Verfasst: 04.08.2020, 15:09
von Ben
Das löscht alle Ordner die mit "Test" anfangen in der Directory "C:\Temp\Test1\" und durch den Zusatz "/r" auch in Unterordnern und das ohne Rückfragen.

Code: Alles auswählen

cd /D C:\Temp\Test1\
REM Das nächste löscht ohne Rückfrage!
For /D /r %%G in ("Test*") DO rd /s /q %%G
Man kann auch unterschiedliche Ordnernamen gleichzeitig angeben. z.B.

Code: Alles auswählen

For /D /r %%G in ("Test*", "Ordner1", "Ordner2") DO rd /s /q %%G

Re: desktop.ini löschen

Verfasst: 04.08.2020, 15:24
von Manny
wäre so gesehen - wenn man es benutzt - etwas für Cleanmgr+ (benutzerdefinierten Job erstellen)

EDIT:

wobei ick mich frage ob der "Aufwand" wirklich nötig ist:

Ich habe mich im Explorer gerade mal auf Mannys Datenschleuder (Mein PC) gestellt und genau diese Datei gesucht:
Laufwerke C bis J und Laufwerke U bis Y ( verbundene Netzwerklaufwerke ) - gesamt 13
gefundene Dateien : 3 ( alle nur auf den Netzwerklaufwerken )

Re: desktop.ini löschen

Verfasst: 04.08.2020, 19:54
von Holgi
@Ben:
also bei mir funktioniert das leider nicht! Weder als *.cmd noch als *.bat und auch nicht als Admin aufgerufen.
Ordner angelegt wie folgt:
C:\Temp\Test1\Links mit Dateien im Ordner "Links"
Ziel: es soll der Ordner Links samt Inhalt gelöscht werden.

Das Script
cd /D C:\Temp\Test1\
REM Das nächste löscht ohne Rückfrage!
For /D /r %%G in ("Test*") DO rd /s /q %%G
macht bei mir gar nix.
Hast du noch eine Idee?

Re: desktop.ini löschen

Verfasst: 04.08.2020, 20:58
von Ben
Du willst z.B. den Ordner "Links" in der Directory "C:\Temp\Test1" löschen. Dann muss auch in der "For" Zeile in den Klammern der Name des zu löschenden Ordners stehen. Und falls Leerzeichen im Pfad oder Ordner Namen enthalten sind das "%%G" bei "rd /s /q" in Anführungszeichen setzen.

Code: Alles auswählen

cd /D "C:\Temp\Test1\"
REM Das nächste löscht ohne Rückfrage!
For /D /r %%G in ("Links") DO rd /s /q "%%G"