Top-Themen

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 Batch: Dateien älter als X filtern und in einer TXT oder CSV speichern

Mitglied: crinaX

crinaX (Level 1) - Jetzt verbinden

14.08.2014, aktualisiert 06.10.2015, 312 Aufrufe, 8 Kommentare

Guten Morgen liebe Community,

ich habe gestern ein PowerShell Skript erstellt, welches Dateien filtert in einem angegebenem Pfad und diese dann in einer .CSV speichert (Pfad+Name und letztes Änderungsdatum). Das Skript sieht in etwa so aus:
01.
#Alle Dateien auf Datum überprüfen und wenn älter als X dann in CSV schreiben 
02.
Get-ChildItem $path –Recurse| where {$_.LastWriteTime –lt $date} | Select-Object FullName, LastWriteTime | sort LastWriteTime | export-csv -path "$csv_path\$csv_name.csv" -encoding ASCII -NoTypeInformation -Delimiter ";"
Nun probiere ich das ganze auch für Windows Server 2000 in einer .bat zu realisieren. Das einzige was ich dazu allerdings finde ist der "forfiles" Befehl. Like this:
01.
Forfiles /P E:\Ordner\ /S /M *.* /D -8 /C "cmd /c del /q @path"
Nur löscht dieser Befehl die Dateien und ich weiß absolut nicht wie ich es hinkriege, dass er die Dateien nicht löscht sondern diese einfach in einer .txt oder .csv speichert.

Kann mir da wer helfen?

LG
crinaX
Mitglied: colinardo
LÖSUNG 14.08.2014, aktualisiert um 09:07 Uhr
forfiles /P "E:\Ordner" /S /M *.* /D -8 /C "cmd /c echo "@path";""@fdate" "@ftime""">deineCSVDatei.csv
Grüße Uwe
Bitte warten ..
Mitglied: crinaX
14.08.2014, aktualisiert um 09:07 Uhr
Wieder viele Dank für die schnelle Antwort
Also die Ausgabe in der CMD sieht soweit richtig aus. Nur steht jetzt hinter der Zeit der Pfad der CSV und diese CSV wird auch nicht erstellt... Noch einen Tipp?


EDIT:
Du hattest schon korrigiert, aber ich noch nicht aktualisiert. Vielen Dank! Funktioniert einwandfrei.

LG
crinaX
Bitte warten ..
Mitglied: crinaX
14.08.2014, aktualisiert um 09:27 Uhr
Kann ich das ganze auch mit Variablen ausfüllen?

01.
forfiles /P %path% /S /M *.* /D -%date% /C "cmd /c echo "@path";""@fdate" "@ftime""">%csv_path%\%csv_name%.csv
Habe es so probiert und die Variablen werden halt vorher vom Nutzer eingetippt. Nun bekomm ich allerdings den Fehler:
01.
FEHLER: Argument/Option ungültig - 'System'.
Bitte warten ..
Mitglied: colinardo
14.08.2014, aktualisiert um 09:33 Uhr
sicher, aber du machst einige Fehler. z.B. verwendest du die spezielle %Path%-Systemvariable und die Systemvariable %date% (außer du wolltest das aktuelle Datum verwenden), hier solltest du besser andere Namen vergeben und der zweite Fehler ist das nicht umschließen der Pfade mit Anführungszeichen wenn sie Leerzeichen enthalten sollten:
forfiles /P "%STRPATH%" /S /M *.* /D -%STRDATE% /C "cmd /c echo "@path";""@fdate" "@ftime""">"%csv_path%\%csv_name%.csv"
Bitte warten ..
Mitglied: crinaX
14.08.2014 um 09:41 Uhr
Das mit der Systemvariablen war mir dann auch aufgefallen. Nur scheinen die Anführungszeichen auch nicht zu helfen:

01.
set /p spath = Bitte Pfad eingeben in dem gesucht werden soll:  
02.
set /p sdate = Bitte geben Sie ein Alter in Tagen an, ab welchem gefiltert werden soll:  
03.
set /p csv_path = Bitte geben Sie einen Pfad ein in welchem die CSV Datei gespeichert werden soll:  
04.
set /p csv_name = Bitte geben Sie einen Namen f%ue%r die CSV Datei ein:  
05.
 
06.
forfiles /P "%spath%" /S /M *.* /D -"%sdate%" /C "cmd /c echo "@path";""@fdate" "@ftime""">"%csv_path%\%csv_name%.csv" 
07.
pause
Mit Anführungszeichen kommt:
01.
FEHLER: Der Wert für Option "/P" darf nicht leer sein.
Und ohne Anführungszeichen:
01.
FEHLER: Ungültige Syntax. Wert für "/P" erwartet.
Bitte warten ..
Mitglied: colinardo
14.08.2014, aktualisiert um 09:45 Uhr
du hast bei deinen SET-Befehlen zwischen der Variablennamen und dem Gleichheitszeichen ein Leerzeichen, das darfst du nicht machen !! Denn ansonsten ist die Variable hinterher leer bzw. existiert nicht. Deswegen die Meldung von Forfiles das der Pfad leer ist !
01.
set /p spath=Bitte Pfad eingeben in dem gesucht werden soll:  
02.
set /p sdate=Bitte geben Sie ein Alter in Tagen an, ab welchem gefiltert werden soll:  
03.
set /p csv_path=Bitte geben Sie einen Pfad ein in welchem die CSV Datei gespeichert werden soll: 
04.
set /p csv_name=Bitte geben Sie einen Namen f%ue%r die CSV Datei ein: 
Bitte warten ..
Mitglied: crinaX
18.08.2014 um 08:45 Uhr
Funktioniert alles einwandfrei. Gibt es auch noch Variablen die ich bei:
01.
forfiles /P "%spath%" /S /M *.* /D -"%sdate%" /C "cmd /c echo "@path";""@fdate" "@ftime""">"%csv_path%\%csv_name%.csv"
Anhängen kann um mir auch noch den Ersteller der Datei und das Erstellungsdatum (nicht Änderungsdatum) in die CSV zu speichern?
Bitte warten ..
Mitglied: colinardo
18.08.2014 um 08:55 Uhr
forfiles /?
gibt dir diese Auskunft.

Grüße Uwe
Bitte warten ..
Ähnliche Inhalte
Windows 7
BATCH: Alter einer TXT-Datei bestimmen
gelöst Frage von ahstaxWindows 75 Kommentare

Hallo, wie bekomme ich mit einer DOS-Batch das Alter einer TXT-Datei bestimmt und lassen dann, bspw bei Alter >16h, ...

Batch & Shell

Bestimmte Teile einer TXT Datei per Batch in eine neue CSV speichern

Frage von WebtixBatch & Shell8 Kommentare

Hallo zusammen, ich bekomme von einem externen Dienstleister in unregelmäßigen Abständen TXT Files mit verschiedenen Werten. Diese sind immer ...

Batch & Shell

Batch: File-Filter - CSV Datei mit CreationTime und Owner

gelöst Frage von crinaXBatch & Shell1 Kommentar

Guten Morgen, habe nun eine Batch, welche mir Dateinamen + letztes Änderungsdatum in eine CSV speichert, welche älter als ...

Batch & Shell

Batch Befehl ausführen wenn Datei älter als X Tage

gelöst Frage von BuggerBatch & Shell14 Kommentare

Hallo zusammen, ich finde immer nur Befehle die Dateien oder Ordner löschen nach x Tagen aber nicht um auf ...

Neue Wissensbeiträge
Windows 10
Zero-Day-Lücke in Microsoft Edge
Information von kgborn vor 12 StundenWindows 10

In Microsofts Edge-Browser klafft wohl eine nicht geschlossene (0-Day) Sicherheitslücke im Just In Time Compiler (JIT Compiler) für Javascript. ...

Sicherheit
Microsoft und Skype: Sicherheit
Information von kgborn vor 12 StundenSicherheit

Die Tage gab es ja einige Berichte zur Sicherheit des Skype-Updaters. Der Updater von Skype läuft unter dem Konto ...

Datenschutz

Behörden ignorieren Sicherheitsbedenken gegenüber Windows 10

Information von Penny.Cilin vor 1 TagDatenschutz8 Kommentare

Hallo, passend zum Thema Ablösung LIMUX in München ein Beitrag bei Heise (siehe Link folgend). Behörden ignorieren Sicherheitsbedenken gegenüber ...

Sicherheit
Information Security Hub Munich airport
Information von brammer vor 1 TagSicherheit

Hallo, Neues Center für Cyber Kriminalität am Münchener Flughafen brammer

Heiß diskutierte Inhalte
Exchange Server
Exchange Postfach Einbindung Betriebs-rat -Arzt, Bewerbung .
gelöst Frage von YellowcakeExchange Server23 Kommentare

Hey ich habe da mal eine Denksport Aufgabe bekommen Genutzt wird ein Exchange Server 2010. hier gibt es den ...

Windows Server
Downgrade von Windows Server 2016 auf 2012 - Wie vorgehen?
Frage von EstefaniaWindows Server13 Kommentare

Guten Ich habe eine Frage an Erfahrene unter euch. Durch einen InPlace Upgrade wurde Windows Server 2012 auf die ...

Datenschutz
Telematikinfrastruktur Erfahrungsaustausch
Frage von MOS6581Datenschutz12 Kommentare

Moin, unter meinen Kunden befinden sich auch einige Ärzte, welche sich künftig mit der Telematikinfrastruktur-Geschichte der Gematik herumärgern dürfen. ...

Windows Server
Delgegierte OU via RDP verwalten - Objektverwaltung zuweisen
gelöst Frage von TOAOICEWindows Server12 Kommentare

Hallo, ich habe folgendes Problem. Ich möchte in meiner Domäne (Server2016), einer Gruppe (OUAdmin) Berechtigungen auf die OU Test ...