Jürgen Schilling - Natur | Fotografie | Technik .

 

JürgenSchilling

Natur | Fotografie | Technik

 
 

 Home

 Black&White
 Cyanotypie
 Fotogramme
 Infrarot
 Jägerprüfung
 Kategorien
 Kirlianfotografie
 Lochkamera
 Makroaufnahmen



Lightbox


 Manuals:
 
Alle Manuals
 Aluminium eloxieren
 Hochspannungsgenerator
 Belichtungszeitentabelle
 Beurteilung v. Negativen
 Blitzlichtfotographie
 Farbmischung
 Filmentwicklung
 Infrarotfotografie
 Teslatrafo
 Teslatrafo Rechner
 Schrauben u. Gewinde

 Entwicklingszeiten:
 Agfa Rodinal
 Kodak D76

 Tiefenschäferechner

 
 Impressum


______

















  
  Bilder pro Gast
  phpMyAdmin
  Counter
  Most viewed
  Logout
  Login
  Theme curve
  Theme my-fruity

Alte Dateien aus einem Transferlaufwerk nach einer bestimmten Zeit löschen


Dieses Skript löscht auf dem Transferverzeichnis einer Firma alle Dateien / Ordner die älter als 7 Tage sind.
Das Script wird täglich um 2:00 Morgens Ortszeit über den TaskManager gestartet.
Eine vorherige Filesicherung findet nicht statt.

In dem Transferverzeichnis hat jeder User ein Verzeichnis mit seinem Namen angelegt.
Diese Verzeichnisse müssen nach dem Löschen der alten Dateien / Ordenr erhalten bleiben, auch wenn diese Verzeichnisse dann leer ist.

Das Skript führt mit dem Zusatzprogramm forfiles.exe den Löschprozeß durch. Hierbei werden auch Userverzeichnisse gelöscht,
wenn diese keine aktuellen Dateien mehr enthalten.

Vor dem Löschen wird daher die erste Verzeichnisebene mit den Userverzeichnissen in ein Textfile eingelesen.
Die gelöschten Userverzeichnisse werden nach dem Löschprozeß Mithilfe der Textfiles wieder angelegt.



Beispiel:
 
Vor dem löschen Nach dem löschen Nach Wiederherstellung der Verzeichnisse
E:\tmp\Huber\datei1.txt            [> 7 Tage]
E:\tmp\Bauer\dateien\mail1.txt  [> 7 Tage]
E:\tmp\Schuster\Bild.jpg          [< 7 Tage]
E:\tmp\
E:\tmp\
E:\tmp\Schuster\Bild.jpg
E:\tmp\Huber\
E:\tmp\Bauer\
E:\tmp\Schuster\Bild.jpg

Script:
 
ECHO off

ECHO.
ECHO =========================================================================================
ECHO Dieses Script loescht alle Files des Transferlaufwerkes, die aelter als eine vorbestimmte
ECHO Anzahl von Tagen sind. Die Ordner bzw. Userlaufwerke, die in der ersten Subebene liegen
ECHO bleiben erhalten, auch wenn sie leer sind.
ECHO Es wird keine Sicherung der geloeschten Files erstellt!!!
ECHO =========================================================================================


REM Lage der Scripte:
SET SCRIPT_LOCATION=C:\batch\Delete_Old_Files_From_E-TEMP\

REM Lage des Transferlaufwerkes:
SET DEL_LOCATION=E:\TEMP\

REM Lage + Name des Logfiles:
SET LOG_LOCATION=%SCRIPT_LOCATION%DELETE_LOG.txt

REM Max. Alter der Files + Ordner im Transferlaufwerk:
SET FILE_AGE=7

REM Datei mit den gesicherten Namen der Ordener erster Ebene:
SET DEL_FOLDER_NAMES=%SCRIPT_LOCATION%DEL_FOLDER_NAMES.txt

REM Delete Files

REM Die erste Ordnerebene mit den nach Usernamen benannten Ordnern sichern
DIR /AD /B %DEL_LOCATION% > %DEL_FOLDER_NAMES%


REM Schreibt in das Logfile:
%SCRIPT_LOCATION%FORFILES /P %DEL_LOCATION% /D -%FILE_AGE% /S /C "CMD /C Echo @PATH geloescht" >> %LOG_LOCATION%


REM Loescht die gefundene Datei:
%SCRIPT_LOCATION%FORFILES /P %DEL_LOCATION% /D -%FILE_AGE% /S /C "CMD /C DEL /F /Q @PATH"


REM Loescht doe leeren Ordner:
FOR /F "usebackq delims=" %%d in (`"DIR %DEL_LOCATION% /AD /B /S | sort /R"`) DO RD "%%d"


REM Leere Userordner die zuvor vom "RD" geloescht wurden werden wieder angelegt.
for /F "tokens=1" %%f in (%DEL_FOLDER_NAMES%) do mkdir %DEL_LOCATION%%%f


REM RD ohne Optionen, loescht nur leere Ordner
REM DIR /ad zeigt nur Ordner an

 


 

© 02.02.2010, Juergen Schilling