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

Frage Entwicklung Batch & Shell

Mitglied: crinaX

crinaX (Level 1) - Jetzt verbinden

14.08.2014, aktualisiert 06.10.2015, 287 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
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
TXT File mit Batch Sript filtern
Frage von hospimanBatch & Shell8 Kommentare

Hallo, ich bin völliger Newbie was Batch Skripte angeht. Ich muss folgendes tun: -Ich habe eine .txt Datei die ...

Windows Server
Dateien per Batch löschen, älter als X Tage
gelöst Frage von deniska93Windows Server3 Kommentare

Hallo, ich möchte gerne bei einem Kunden per Batch Datei in einem bestimmten Ordner alle Dateien löschen, die älter ...

Neue Wissensbeiträge
Batch & Shell

Open Object Rexx: Eine mittlerweile fast vergessene Skriptsprache aus dem Mainframebereich

Information von Penny.Cilin vor 8 StundenBatch & Shell8 Kommentare

Ich kann mich noch sehr gut an diese Skriptsprache erinnern und nutze diese auch heute ab und an noch. ...

Humor (lol)

"gimme gimme gimme": Automatischer Test stolpert über Easter Egg im man-Tool

Information von Penny.Cilin vor 10 StundenHumor (lol)6 Kommentare

Interessant, was man so alles als Easter Egg implementiert. Ist schon wieder Ostern? "gimme gimme gimme": Automatischer Test stolpert ...

MikroTik RouterOS

Mikrotik - Lets Encrypt Zertifikate mit MetaROUTER Instanz auf dem Router erzeugen

Anleitung von colinardo vor 1 TagMikroTik RouterOS8 Kommentare

Einleitung Folgende Anleitung ist aus der Lage heraus entstanden das ein Kunde auf seinem Mikrotik sein Hotspot Captive Portal ...

Sicherheit

Sicherheitslücke in HP-Druckern - Firmware-Updates stehen bereit

Information von BassFishFox vor 1 TagSicherheit1 Kommentar

Ein weiterer Grund, dass Drucker keinerlei Verbindung nach "auswaerts" haben sollen. Unter Verwendung spezieller Malware können Angreifer aus der ...

Heiß diskutierte Inhalte
Windows Server
RDP macht Server schneller???
Frage von JaniDJWindows Server17 Kommentare

Hallo Community, wir betrieben seit geraumer Zeit diverse virtuelle Maschinen und Server mit Windows Server 2012. Leider haben wir ...

Windows 10
Windows 10 dunkler Bildschirm nach Umfallen
Frage von AkcentWindows 1015 Kommentare

Hallo, habe hier einen Windows 10 Rechner der von einem User umgefallen wurde (Beine übers Knie, an den PC ...

Windows 10
Bitlocker nach Verschlüsselung nicht mehr aufrufbar!
gelöst Frage von alexlazaWindows 1013 Kommentare

Hallo, ich besitze ein HP ZBook 17 G4 mit einem Windows 10 Pro Betriebssystem. Bei diesem Problem handelt sich, ...

Batch & Shell
Neuste Datei via PowerShell kopieren
gelöst Frage von kaiuwe28Batch & Shell11 Kommentare

Hallo zusammen, ich hatte mir mit Hilfe der Suche im Forum einen kleinen Code von colinardo rausgesucht und versucht ...