Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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, 4576 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
Neue Wissensbeiträge
Windows 10

Windows 8.x oder 10 Lizenz-Key aus dem ROM auslesen mit Linux

Tipp von Lochkartenstanzer zum Thema Windows 10 ...

Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(38)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
POS Hardware und alternativen zu Raid 1? (21)

Frage von Brotkasten zum Thema Festplatten, SSD, Raid ...

Viren und Trojaner
Verschlüsselungstrojaner simulieren (18)

Frage von AlbertMinrich zum Thema Viren und Trojaner ...

Server-Hardware
gelöst Empfehlung KVM over IP Switch (8)

Frage von Androxin zum Thema Server-Hardware ...

Ubuntu
Nextcloud 12 Antivirus App for Files (8)

Frage von horstvogel zum Thema Ubuntu ...