emeriks
Goto Top

PowerShell - Get-ChildItem mit -LiteralPath und -Exclude

Hi,
mache ich hier was falsch oder geht das tatsächlich nicht?

Get-ChildItem "D:\" -Attributes Hidden,!Hidden -Exclude "System Volume*","`$Recycl*"  
funktioniert. Die genannten Ausschlüsse werden ausgelassen.

Get-ChildItem -LiteralPath "D:\" -Attributes Hidden,!Hidden -Exclude "System Volume*","`$Recycl*"  
funktioniert dagegen nicht. Die genannten Ausschlüsse werden trotzdem aufgelistet.

Ich brauche -LiteralPath, weil ich mit "\\?\UNC\Server\Freigabe" arbeiten muss, um lange Pfade sicher zu erfassen.

E.

Content-ID: 585856

Url: https://administrator.de/forum/powershell-get-childitem-mit-literalpath-und-exclude-585856.html

Ausgedruckt am: 06.04.2025 um 04:04 Uhr

TK1987
TK1987 08.07.2020 aktualisiert um 15:46:18 Uhr
Goto Top
Moin,

ich würde mit where-object arbeiten, funktioniert garantiert immer
Get-ChildItem -LiteralPath "D:\" -Attributes Hidden,!Hidden | ?{$_ -notmatch '^system vol|^\$Recycl'}  

Gruß Thomas
emeriks
emeriks 08.07.2020 um 16:06:02 Uhr
Goto Top
Ja, ich weiß.
Aber das ist a) viel langsamer und b) birgt es die Gefahr für Zugriffsfehler.
144705
144705 08.07.2020 aktualisiert um 17:01:19 Uhr
Goto Top
Ist ein Bug der PS 5.1
In der aktuellen PS Version ist es gefixt.
get-childitem -LiteralPath should accept 'Include' or 'Exclude' filter

In der 6er und 7er lüppt es korrekt

screenshot
emeriks
emeriks 09.07.2020 um 08:57:32 Uhr
Goto Top
Zitat von @144705:
In der 6er und 7er lüppt es korrekt
Danke für die Info.
Die 5.1 und 7.0.2 laugen problemlos nebeneinander? Da muss ich mir keine Sorgen machen, dass da jetzt andere Tools aussteigen oder auch erst noch ein Update benötigen? z.B. Exchange 2016 Konsole?
144705
144705 09.07.2020 aktualisiert um 09:02:41 Uhr
Goto Top
Zitat von @emeriks:

Zitat von @144705:
In der 6er und 7er lüppt es korrekt
Danke für die Info.
Die 5.1 und 7.0.2 laugen problemlos nebeneinander? Da muss ich mir keine Sorgen machen, dass da jetzt andere Tools aussteigen oder auch erst noch ein Update benötigen? z.B. Exchange 2016 Konsole?
Ja sind vollkommen getrennt. Die PS 6 oder 7 bekommen erstens separate Verzeichnisse und zum Starten ein Binary das anders heißt > pwsh statt powershell.