Erstellen Sie Objekte mit benutzerdefinierten Eigenschaften, die abgeleitete Dateisystempfadinformationen enthalten, und exportieren Sie sie in eine CSV-berechnete Eigenschaft.
Anmerkung der Redaktion
Der Kern dieser Frage ist:
* Wie füge ich benutzerdefinierte Eigenschaften zu Objekten hinzu, die von @ ausgegeben werdeGet-ChildItem
, die abgeleitete Pfadinformationen enthalten, nämlich den übergeordneten Ordnerpfad (alsFolder
und Name (alsFoldername
)?
* Wie exportiere ich die resultierenden Objekte in eine CSV-Datei?
erzeit wird ein Skript ausgeführt, das ich von StackOverflow übernommen und für meinen eigenen Gebrauch geändert habe. Der Zweck des Skripts besteht darin, ein Verzeichnis zu durchsuchen, die Dateinamen zu ermitteln und sie dann als CSV-Datei in ein Verzeichnis zu exportieren.
Ich konnte das Skript so ändern, dass es nur den Dateinamen durchläuft, da es ursprünglich nur das @ durchläufpath, user
etc. Konnte dies durch Hinzufügen von @ t,Name
. Aus irgendeinem Grund kann ich das Skript nicht durch den übergeordneten Ordner ziehen, in dem es sich befindet, und möchte auch den übergeordneten Ordner.
Ich glaube, dieser Teil des Codes ist das, womit ich am meisten Probleme habe. Auf demselect
Ich konnte hinzufügen,Name
aber Hinzufügen von,folder
oder,foldername
nach demselect
zieht nicht richtig durch.
ForEach-Object {$_ | Add-Member -Name "Owner" -MemberType NoteProperty -Value (Get-Acl $_.FullName).Owner -PassThru} |
Sort-Object fullname |
Select FullName,CreationTime,LastWriteTime,Owner,Name,Folder,Foldername