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

PowerShell Script: Alte Dateien Filtern und Dateinamen und Letzte Bearbeitung in CSV

Frage Microsoft

Mitglied: crinaX

crinaX (Level 1) - Jetzt verbinden

13.08.2014, aktualisiert 06.10.2015, 182 Aufrufe, 5 Kommentare

Hallo liebe Community,

ich schreibe gerade ein PowerShell Script welches alte Dateien finden soll und dann eine .CSV Datei erstellt in welcher der Dateiname und die letzte Bearbeitung in jeweils einer Spalte zu finden ist. Am besten das ganze noch sortiert nach der ältesten Bearbeitung.

So sieht der Versuch bis jetzt aus:
Get-ChildItem –Recurse -Path $path| where {$_.LastWriteTime –lt $date} | Select-Object Name, LastWriteTime | export-csv -path C:temp\test.csv -encoding ASCII -NoTypeInformation

Problem dabei ist: Es werden mir keine zwei Spalten (Name, LastWriteTime) erstellt sondern nur eine mit der Überschrift: Name"LastWriteTime"

Kann mir da jemand helfen?
Mitglied: colinardo
LÖSUNG 13.08.2014, aktualisiert um 11:20 Uhr
Hallo crinaX, Willkommen auf Administrator.de!
Kann ich hier nicht nachvollziehen, das sollte problemlos laufen.
01.
$path = "C:\testordner" 
02.
$date = (get-date).AddDays(-30) 
03.
Get-ChildItem $path -Recurse | ?{!$_.PSIsContainer -and $_.LastWriteTime –lt $date} | select Name, LastWriteTime | sort LastWriteTime | export-csv "C:temp\test.csv" -encoding ASCII -NoTypeInformation
Grüße Uwe
Bitte warten ..
Mitglied: crinaX
13.08.2014 um 11:19 Uhr
Hallo colinardo,

vielen Dank für die schnelle Antwort. Allerdings funktioniert es bei leider nicht.

Hier mal kurz mein aktueller Code:

#Benutzereingaben: Pfad, Datum, Pfad für CSV, Name der CSV
$path = read-host "Bitte Pfad eingeben in dem gesucht werden soll: "
$date = read-host "Bitte geben Sie ein Datum ein ab welchem gefiltert werden soll (YYYY-MM-DD): "
$csv_path = read-host "Bitte geben Sie einen Pfad ein in welchem die CSV Datei gespeichert werden soll: "
$csv_name = read-host "Bitte geben Sie einen Namen für die CSV Datei ein: "

#Alle Dateien auf Datum überprüfen und wenn älter als X dann in CSV schreiben
Get-ChildItem $path –Recurse| where {$_.LastWriteTime –lt $date} | Select-Object Name, LastWriteTime | sort LastWriteTime | export-csv -path C:temp\test.csv -encoding ASCII -NoTypeInformation



Ergebnis wenn ich die CSV mit Excel öffne:
A1: Name,"LastWriteTime"
A2: 2013KW_33_Nr2.doc,"21.08.2013 13:52:20"
Bitte warten ..
Mitglied: colinardo
LÖSUNG 13.08.2014, aktualisiert um 11:31 Uhr
Das geht schon wenn du für Excel ein Semikolon als Delimiter verwendest !
export-csv "C:temp\test.csv" -encoding ASCII -NoTypeInformation -delimiter ";"
erst dann erkennt Excel die Spalten automatisch!
Bitte warten ..
Mitglied: crinaX
13.08.2014 um 11:26 Uhr
Oh super. Vielen Dank. Das war die Lösung

Hätte jetzt noch eine kleine weitere Frage:
Ist es möglich, dass er den Pfad der Datei noch mit in die selbe Spalte schreibt?
Beispiel Spalte Name:
C:\temp\test.txt
Bitte warten ..
Mitglied: colinardo
LÖSUNG 13.08.2014, aktualisiert um 11:31 Uhr
abä sichä, einfach select Name, LastWriteTime durch select FullName, LastWriteTime ersetzen
Bitte warten ..
Neuester Wissensbeitrag
Exchange Server

WSUS bietet CU22 für Exchange 2007 SP3 nicht an. EOL Exchange 2007

Tipp von DerWoWusste zum Thema Exchange Server ...

Ähnliche Inhalte
Batch & Shell
gelöst Powershell Get-Content Inhalt filtern (1)

Frage von derhoeppi zum Thema Batch & Shell ...

Batch & Shell
gelöst PC nach einem Kopiervorgang herunterfahren - PowerShell Script? (4)

Frage von Stefan007 zum Thema Batch & Shell ...

Windows Server
PowerShell Script - Ordnerrechte setzen (7)

Frage von desmondjames zum Thema Windows Server ...

Batch & Shell
gelöst Powershell Script mit Zertifikat signieren (5)

Frage von zamsi7 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Batch & Shell
gelöst Batch xls nach aktuellem Datum auslesen und email senden (14)

Frage von michi-ffm zum Thema Batch & Shell ...

Windows Server
SBS 2011 Standard virtualisieren (13)

Frage von HeinrichM zum Thema Windows Server ...

LAN, WAN, Wireless
Per Script auf UniFi-controller zugreifen und WPA2-Key ändern (11)

Frage von Winfried-HH zum Thema LAN, WAN, Wireless ...

Backup
Datensicherung ARCHIV (11)

Frage von fautec56 zum Thema Backup ...