Batch Skript erweitern

Mitglied: michi-ffm

michi-ffm (Level 1) - Jetzt verbinden

2017/02/07 um 16:00 Uhr, 1442 Aufrufe, 1 Kommentar

Hallo zusammen,

ich hänge jetzt schon seid Tagen dieses Skript zu erweitern, kann mir evtl jemand weiterhelfen?

Er soll Ordner und Dateien löschen, die Älter als 14 Tagen sind.
Auch wenn im Ordner neue Dateien angelegt werden, sollen die restlichen Dateien im Ordner gelöscht werden, die älter als 14 Tagen sind.

Zum eigendlichen Thema:

Ich möchte gerne ein Log erstellen, der mir anzeigt, was gelöscht wurde inkl Datum & Zeit ist das möglich?
Mitglied: Pjordorf
2017/02/07 um 16:49 Uhr
Hallo,

Zitat von michi-ffm:
jemand weiterhelfen?
Und was bedeutet für dich und hier jetzt Weiterhelfen?

Das machste als erste mal weg, damit du siehst was passiert.

Forfiles /p D:\IT_test /d -1 -c "cmd /c echo @File>>D:\IT_test\log\Log_%date%_geloescht.txt"
Hier wird dir eine Liste erstellt wo du siehst welche Dateien (ohne Unterverzeichnisse) in deiner Auswahl (d -1) enthalten sind. Da sind auch andere Dateien drin? Dann passt deine Auswahl nicht

Forfiles /P D:\IT_test /D -14 /C "cmd /c rmdir /q /s @path "
Hier werden Verzeichnisse und Dateien entfernt sofern deine Auswahlkriterien passen. Durch dein /s werden auch Unterverzeichnisse entfernt und durch dein /q auch ohne nachfrage. Liefert aber ein "Der Verzeichnissname ist ungültig" da du Dateien und nicht Ordner löschen willst. RMDIR /? hilft weiter.

Forfiles /p D:\IT_test /s /d -14 /c "cmd /c rd @File /s /q"
Wie oben. Ein RD ist gleich ein RMDIR. Ersetze in mal dein rd bzw. rmdir durch echo und schaue dir an was ein @Path und ein @Files unterscheidet.

Forfiles /p D:\IT_test /s /d -14 /c "cmd /c del /s /q @path"
Hier wird n un tatsächlich deiner Auswahl gelöscht. Ein Del akzeptiert eben auch Dateinamen.

Er soll Ordner und Dateien löschen, die Älter als 14 Tagen sind.
Nur der erste ForFiles und der letzte ForFiles tun etwas sinnvolles. Die anderen laufen in Fehler rein.

Ich möchte gerne ein Log erstellen, der mir anzeigt, was gelöscht wurde inkl Datum & Zeit ist das möglich?
Dein erstes ForFiles sollte dann auch die Kriterien der anderen ForFiles entsprechen. Datum und Uhrzeit vom Löschen? So jedenfalls nicht. Da wirst du dir wohl eine Schleifen bauen müssen (FOR /?), jede Datei / Ordner einzelen abfrühstücken bzw löschen und dann in dein Protokoll notieren wan wer was bevor es nächsten Datensatz geht. Dein Erstes ForFiles liefert dir doch schon eine Liste der zu löschenden Dateien / Order wenn du dort @Path anstelle von @Files verwendest.

Oder wie dir schon letztens genannt - Powershell. So wir dir auch schon genannt wurde dein Echo OFF erstmal nicht zu verwenden...

Gruß,
Peter
Bitte warten ..
Heiß diskutierte Inhalte
Ubuntu
HAProxy-Wi: Installation des Pakets geht nicht - ich hätte keine enabled Repos
itnirvanaQuestionUbuntu27 Comments

Hallo, von der Seite möchte ich gerne HAProxy-Wi installieren ich führe das hier aus Dann kommt -> There ar ...

Multimedia
Fernseher im Empfang GEMA-pflichtig?
CaptainDuskyQuestionMultimedia26 Comments

Guten Tag, wenn ich in einer Firma einen Fernseher im Empfang betreibe, dort aber nur Nachrichten laufen lasse, ist ...

Windows Server
PowerShell Script für MailVersand mit Anhang
solved klausk94QuestionWindows Server20 Comments

Hallo Zusammen, ich bin aktuell etwas am verzweifeln an einem PS Script für den Emailversand Das Script funktioniert, jedoch ...

LAN, WAN, Wireless
RJ45 Buchsen Verbindung
solved DennisAdm1nQuestionLAN, WAN, Wireless19 Comments

Ich habe als Aufgabe bekommen die LAN-Verbindung in einem Haus zu fixen, dabei ist mir aufgefallen, dass der RJ45-Stecker ...

Windows 10
Windows 7 zu Windows 10 weiterhin kostenlos möglich?
solved CubeHDQuestionWindows 1018 Comments

Guten Abend, ist es möglich einen vorhandenen Windows 7 Key für Windows 10 zu verwenden? Kennt ihr vielleicht andere ...

Batch & Shell
Frage zu batch (cmd ) - Drag und Drop - Bearbeitung bei nicht geschlossenem DOS Fenster
solved AN34MemQuestionBatch & Shell17 Comments

Hallo. Vielleicht mag meine Frage etwas seltsam sein, jedoch möchte ich gerne wissen wie das umzusetzen ist: Angenommen man ...

Ähnliche Inhalte
Batch & Shell
Windows Batch Skript
gelöst 140575FrageBatch & Shell7 Kommentare

Hallo Leute, Ich will ein Batch Skript schreiben und will einen Datei zB .txt erstellen und dann in die ...

Windows 10
Hilfe beim Batch Skript
gelöst WinLiCLIFrageWindows 1013 Kommentare

Hallo zusammen, ich möchte gerne ein Skript schreiben das folgendes macht: Wenn WindowsBuildNumber 10.0.10586 oder 10.0.14393 enthält, dann führe ...

Batch & Shell
Softwareverteilung per Batch-Skript
gelöst DennisWeberFrageBatch & Shell14 Kommentare

Hallo, ist es möglich über ein Batch Datei einen MSI-Paket auf anderen Domain-PCs zu installieren? Ich habe mir das ...

Batch & Shell
Batch Skript ins Powershell
gelöst BudSpenserFrageBatch & Shell9 Kommentare

Hallo erstmal Ich habe ein Batch Skript, was mit bestimmten Wörtern in der LETZTEN Logdatei des gewünschten Dateipfads sucht. ...

Batch & Shell
Zeitvergleich über Batch-Skript
gelöst StefanWillmsFrageBatch & Shell6 Kommentare

Hallo zusammen, ich habe ein kleines Problem. Ich abeite in einer kleinen Firma und dort muss ich mich nebenher ...

Batch & Shell
Fehler im Batch-Skript
gelöst xondra1909FrageBatch & Shell3 Kommentare

Hallo, ich habe ein Batch-Skript, bei dem ich den Fehler nicht finde. Vielleicht könnt ihr mir dabei helfen. Folgendes ...

Berechtigungs- und IdentitätsmanagementBerechtigungs- und IdentitätsmanagementWebdienste und -serverWebdienste und -serverDatenbankenDatenbankenMonitoring & SupportMonitoring & SupportHybrid CloudHybrid CloudSmall Business ITSmall Business IT