Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Wie zählt man mittels batch-file Dateien in Verzeichnissen inkl Unterverzeichnissen die ÄLTER als zb. 6 Monate bzw 180 tage sind

Frage Entwicklung Batch & Shell

Mitglied: bernd8183

bernd8183 (Level 1) - Jetzt verbinden

20.01.2012 um 19:45 Uhr, 4614 Aufrufe, 6 Kommentare

hallo,
erst seit kurzem beschäfzige ich mit batch und stehe jetzt vor der frage wie ich in 200 verzeichnissen und 50000 dateien die files zählen kann, die älter als ein halbes Jahr sind.
Löschen mit delage wie ich es hier oft gelesen habe möchte ich nicht... nur zählen....


vorab danke für die hilfe

hie mal rein Auszug, was ich bisher gemacht hab... funtioniert auch soweit...


set /A filecnt=0
set /A textfilecnt=0
set /A dircnt=0
set /A oldfilescnt=0

for /F %%i in ('dir "c:\seib\quelldat" /B/S /A-d') do set /A filecnt=filecnt+1
for /F %%i in ('dir "c:\seib\quelldat" /B /Ad') do set /A dircnt=dircnt+1
for /f %%i in ('dir "C:\seib\quelldat" /B/S ^2^>nul^|find /C /I ".txt"') do set /a textfilecnt+=%%i

echo %DATE:~-4%%DATE:~-10,2%%DATE:~-7,2%;%TIME%;folder=;%dircnt%;files=;%filecnt%;textfiles=;%textfilecnt%;files älter als XXTage;%%oldfilescnt >>c:\seib\zieldata\output.txt


das Ergebnis ist ein logfile in dem nach jedem batchlauf ein zeile mit Zeitstempel, anzahl allervorhanden files, anzahl aller txt-files erzeugt wird

jetzt soll hier noch zusätzlich die anzahl aller dateien älter 6 Monate ausgegeben werden...

wer kann helfen?
Mitglied: bastla
20.01.2012 um 20:33 Uhr
Hallo bernd8183 und willkommen im Forum!
wer kann helfen?
delage

... hat auch einen Schalter "preview" zu bieten ...

... und ansonsten VBS.
Übrigens könnte
for /F %%i in ('dir "c:\seib\quelldat" /S/W^|findstr "Datei(en)" 2^>nul') do set /A filecnt=%%i
bzw
for /F %%i in ('dir "c:\seib\quelldat" /S/W^|findstr "Verzeichnis(se)," 2^>nul') do set /A dircnt=%%i
und
for /F %%i in ('dir "c:\seib\quelldat\*.txt" /S/W^|findstr "Datei(en)" 2^>nul') do set /A textfilecnt=%%i
nicht nur (wegen der "Code"-Formatierung) besser lesbar, sondern auch performanter sein ...

... und da ich schon mal dabei bin: Ein immer wiederkehrender Bestandteil wie der Pfad "c:\seib\quelldat" schreit nach der Verwendung einer Variablen.

Grüße
bastla
Bitte warten ..
Mitglied: pieh-ejdsch
21.01.2012, aktualisiert 09.10.2012
moin Bernd,

Robocopy könnte auch eine Alternative dazu sein.
01.
for /f "tokens=1,3" %%i in ('Robocopy /l /s /r:0 /minage:180 D:\In-dem-Ordner-suchen X ^|findstr "Dateien:"') do set /a %%i=%%j 
02.
echo Alte Dateien %Dateien:%
Gruß Phil
Bitte warten ..
Mitglied: bernd8183
21.01.2012 um 18:52 Uhr
Danke... hat geklappt... hab mir delage besorgt und folgendes umgesetzt:


cd C:\seib\skripte
DelAge32.exe C:\seib\quelldat\*.* 1 /preview >c:\seib\zieldata\tmp_count_older_files.txt
cd %zielpfad%
FOR /F "delims=:" %%A IN ('findstr /N .* "tmp_count_older_files.txt"') DO set /A oldfilecnt=%%A
..........

jetzt "spiel" ich noch ein bischen damit und die Performance-optimierungen schau ich mir auch noch an... danke dafür
Bitte warten ..
Mitglied: bernd8183
21.01.2012 um 18:52 Uhr
danke ... werd ich bei gelegenheit mal einbauen....
Bitte warten ..
Mitglied: bastla
21.01.2012 um 20:04 Uhr
Hallo bernd8183!

Wolltest Du nicht eigentlich 60 Tage und auch die Unterordner berücksichtigen? Eine Temp-Datei sollte auch nicht nötig sein:
for /f "delims=:" %%i in ('delage32 C:\seib\quelldat\*.* 60 /recurse /preview^|findstr /n "."') do set /A oldfilecnt=%%i
Grüße
bastla
Bitte warten ..
Mitglied: bernd8183
21.01.2012 um 23:28 Uhr
auch nicht schlecht ! aber zum testen war 1 Tag und eine temp-datei für mich ganz gut...


fehlendes /recurse hab ich damit auch noch bemerkt...


danke und gruß
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Dateien verschieben die älter sind wie 1 Tag (3)

Frage von pblacky zum Thema Batch & Shell ...

Datenbanken
Access 2016 vertauscht Monat und Tag in meiner CSV Datei (1)

Frage von iGordon zum Thema Datenbanken ...

Batch & Shell
Batch - alle unterverzeichnisse miteinbeziehen (5)

Frage von mksadm zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Update

Novemberpatches und Nadeldrucker bereiten Kopfschmerzen

(14)

Tipp von MettGurke zum Thema Windows Update ...

Windows 10

Abhilfe für Abstürze von CDPUsersvc auf Win10 1607 und 2016 1607

(7)

Tipp von DerWoWusste zum Thema Windows 10 ...

RedHat, CentOS, Fedora

Fedora 27 ist verfügbar

Information von Frank zum Thema RedHat, CentOS, Fedora ...

Heiß diskutierte Inhalte
Server
Bilder aus dem Web mit CSV runterladen (30)

Frage von Yannosch zum Thema Server ...

Server-Hardware
Bestehendes Raid erweitern um 4 gleiche Platten! (Verständnis Fragen) (12)

Frage von Hendrik2586 zum Thema Server-Hardware ...

Windows Update
WSUS 4 (Server 2012 R2) - Windows 10 Updates nicht möglich (12)

Frage von c0d3.r3d zum Thema Windows Update ...