Pfad zu lang, ist es aber nicht?

Pfad zu lang, ist es aber nicht?

Ich versuche, einen Get-ChildItem -Recursefür eine Dateifreigabe auszuführen und erhalte einige „Pfad zu lang“-Fehler. Aber wenn ich tiefer eindringe, sind einige davon nicht lang.

Ich verwende , -ErrorVariableum die Fehlerdetails in einer Variable namens zu erfassen $ErrLog. Anschließend protokolliere ich sie mit Folgendem in einer CSV-Datei:

if ($ErrLog.Length -ne 0)
{
    $ErrLog | ForEach-Object {

        # Gather details of interest.
        $ErrTarget = $_.TargetObject
        $ErrReason = $_.CategoryInfo.Reason

        # Write data to custom PowerShell object.
        $ErrObject = New-Object PSObject
        $ErrObject | Add-Member -MemberType NoteProperty -Name 'Target Path' -Value $ErrTarget
        $ErrObject | Add-Member -MemberType NoteProperty -Name 'Error Reason' -Value $ErrReason

        # Add error to log variable.
        $ErrList += $ErrObject
    }
}

# Announce number of errors, and write to log as needed.
if ($ErrList.Length -eq 0)
{
    Write-Output "No errors encountered.`n"
}
else
{
    $ErrList | Export-CSV $LogErrors -NoTypeInformation
    $ErrorsCount = $ErrList.Length
    Write-Output "Logged $ErrorsCount errors.`n"
}

Der obige Code scheint einwandfrei zu funktionieren, aber die Daten, die ich daraus erhalte, stimmen nicht ganz mit den Fehlerdetails überein.

Die Fehlerdetails auf der Konsole besagen, dass Dateinamen weniger als 260 Zeichen und Verzeichnisnamen weniger als 248 Zeichen lang sein müssen. Das macht durchaus Sinn. Allerdings sind alle protokollierten Pfade Verzeichnisse und einige davon sind sogar kürzer als 200 Zeichen!

Das längste Protokoll, das ich habe, ist 259 Zeichen lang. Das und andere mit mehr als 248 Zeichen sind sinnvoll. Das kürzeste ist jedoch 186, und es gibt viele andere, die kürzer als 248 sind.

Warum erhalte ich diese „Pfad zu lang“-Fehler bei Verzeichnissen, die es nicht sind? Gibt es etwas, das mir die Fehlerdaten mitteilen sollten, das ich einfach nicht im Protokoll erfasse?

verwandte Informationen