Konvertieren string directory-Objekt in PowerShell
Ich Lesen Zeichenketten zeilenweise aus einer Datei (mit Get-Content und eine foreach-Schleife), ich will wandeln diese Saiten directory-Objekte (also kann ich die access-Eigenschaften wie .FullName
). Wie Sie leicht umwandeln von string zu Verzeichnis?
Mit Dateien ist es einfach: $myFileAsFile = $myFileAsStr | dir $_
jedoch, wie zu erhalten ist mein Ziel für ein $directoryAsString
?
InformationsquelleAutor D.R. | 2015-10-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Sie verwenden können .Netto Klasse
System.IO.FileInfo
oderSystem.IO.DirectoryInfo
. Dies funktioniert auch, wenn Verzeichnis nicht existiert:Wird es auch mit Dateien arbeiten:
Also zu prüfen, ob es wirklich ein Verzeichnis verwenden:
Gibt es ein Beispiel mit
System.IO.FileInfo
im Kommentar unten.[System.IO.FileInfo]$filename = "File path here"
um ein file-Objekt. Dann können Sie$filename.directory
um es zu bekommen-Verzeichnis. Etwas off-topic, aber nur für den Fall, dass Sie, die Leser, die hier landeten, genau wie ich.InformationsquelleAutor Mikhail Tumashenko
Okay, die Antwort scheint zu sein
Get-Item
:Funktioniert!
In meinem Fall ist Sie immer vorhanden ist, haben Sie eine bessere Lösung im Allgemeinen Fall als auch?
Behandeln Sie den Ordner möglicherweise nicht vorhanden: if(Test-Path $dirAsStr){$dirAsDir = Get-Item $dirAsStr}else{$dirAsDir = md $dirAsStr}
InformationsquelleAutor D.R.
$(Get-Item $directoryAsString).FullName
InformationsquelleAutor Phoenix14830