Skript zum Suchen und Entfernen aller ausgeblendeten Ordner

Problem

Ich benötige ein Skript (VB oder BAT: Prefferebly BAT-Skript), das alle Dateien und Ordner (auch die Ordner, die Unterordner und Dateien enthalten) mit ausgeblendeten Attributen durchsucht und löscht

in einem bestimmten Laufwerk oder Ordner. Das heißt, das Skript sucht beim Ausführen nach allen Dateien und Ordnern in einem Laufwerk und löscht alle Dateien und Ordner, die ausgeblendet sind, wirkt sich jedoch nicht auf das Löschen von Dateien aus, die nicht ausgeblendet sind.

Eigentlich möchte ich dies, um einige böse redundante Viren loszuwerden, die über USB-Laufwerke und Speicherkarten übertragen werden. Normalerweise werden sie nicht im Explorer angezeigt, und ich muss sie manuell von der Befehlszeile löschen, indem ich ihre Attribute ändere.

Die Befehle:

 attrib filename.ext -h -r -s dann del filename.ext 

Eigentlich möchte ich, dass ein Skript den Prozess für Unwissende hier in meinem Büro vereinfacht, die unwissentlich die Computer infizieren, indem sie die Virencodes ausführen. Das Antivirus hilft nicht viel. Ich plane, aus diesem Batch-Skript eine Exe zu erstellen und diese im Kontextmenü von Laufwerken und Ordnern mit der rechten Maustaste hinzuzufügen. Es ist mir egal, ob andere wichtige Dateien mit verstecktem Attribut in diesem Verfahren gelöscht werden, da es sich bei der Quelle normalerweise um Speicherkarten handelt und die benötigten Dateien nur Bilddateien sind, die nicht versteckt sind und daher von diesem Verfahren nicht betroffen sind. Auch wenn ein Filter für bestimmte Erweiterungen wie JPEG, RAW usw. erstellt werden kann, um nicht gelöscht zu werden, ist es besser.

Bitte hilf mir.

Lösung

Um den gesamten Baum zu löschen, können Sie dies verwenden:

 FOR / F "-Token = *" %% G IN ('DIR / B / AD / S * .gif *') DO RMDIR / S / Q %% G 

DIR / B / AD / S * .gif *

listet alle Dateien mit dem Namen ".gif" auf

/ B "entblößt" die Ausgabe nur mit dem Dateinamen

/ AD listet nur Verzeichnisse auf

/ S rekursiert, dass Unterverzeichnisse ihren Inhalt enthalten, wenn sie den Auflistungskriterien entsprechen

RMDIR / S / Q [Pfad / Name]

löscht das Verzeichnis [Pfad / Verzeichnis] ​​und alle seine Kinder

FOR / F verarbeitet jedes Element (in diesem Fall Verzeichnisse) in der Menge IN ('[Befehl]') durch Ausführen des Befehls DO [Befehl].

%% G ist ein Parameter, der in diesem Beispiel ein Verzeichnisname ist

"tokens = *" besagt, dass alle in einer Zeile (dh vom Befehl dir) ausgegebenen Zeichen dem Parameter %% G zugewiesen werden

Weitere Informationen zur Auswahl versteckter Dateien finden Sie in der Microsoft-Befehlszeilenreferenz (unterer Link) unter FOR:

//technet.microsoft.com/en-au/library/bb491071.aspx

Darüber hinaus sind dies meine Tipps für den Betrieb von Hidden Files, kompilieren Sie sich und versuchen Sie:

XCOPY / H kopiert die Dateien, einschließlich der versteckten Dateien, an ein neues Ziel

DEL / AH löscht nicht versteckte Dateien aus dem neuen Ordner

DEL / AH löscht versteckte Dateien aus dem Originalordner

Hinweis

Danke an Aadhi für diesen Tipp im Forum.

Vorherige Artikel Nächster Artikel

Top-Tipps