Warum kann ich Dateien in cmd und PowerShell nicht ohne „-Force“ löschen, wenn ich das im Explorer tun kann?

Warum kann ich Dateien in cmd und PowerShell nicht ohne „-Force“ löschen, wenn ich das im Explorer tun kann?

Ich habe einige Dateien mit macOS Finder auf eine exFAT-Partition kopiert, sodass ich am Ende viele versteckte dot-Dateien im Ordner hatte. Ich kann sie problemlos im Explorer löschen, aber wenn ich den delBefehl ausführe, erhalte ich in cmd immer die Fehlermeldung „Konnte nicht finden“, obwohl sie mit aufgelistet werden könnendir

D:\>dir /a "D:\._DSCF0035.JPG"
 Der Datenträger im Laufwerk D ist „Data“
 Die Volume-Seriennummer lautet 7802-8428

 Verzeichnis von D:\

12/04/2021 10:08 SA 4.096 ._DSCF0035.JPG

D:\>del "D:\._DSCF0035.JPG"
D:\._DSCF0035.JPG konnte nicht gefunden werden

D:\>del /f "D:\._DSCF0035.JPG"
D:\._DSCF0035.JPG konnte nicht gefunden werden

In PowerShell bekomme ich auch einen Fehler, wenn ich normal lösche, aber wenn ich etwas hinzufüge, -Forceist Remove-Itemes erfolgreich

PS D:\> ls -Force "D:\._DSCF0009.JPG"


    Verzeichnis: D:\


Modus LastWriteTime Länge Name
---- ------------- ------ ----
-ah-- 12.04.2021 10:08 Uhr 4096 ._DSCF0009.JPG


PS D:\> rm "D:\._DSCF0009.JPG"
rm: Element D:\._DSCF0009.JPG kann nicht entfernt werden: Sie verfügen nicht über ausreichende Zugriffsrechte, um dies durchzuführen
Betrieb.
In Zeile:1 Zeichen:1
+ rm "D:\._DSCF0009.JPG"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo: PermissionDenied: (D:\._DSCF0009.JPG:FileInfo) [Remove-Item], IOException
    + Vollständig qualifizierte Fehlernummer: RemoveFileSystemItemUnAuthorizedAccess, Microsoft.PowerShell.Commands.RemoveItemCommand
PS D:\> rm -Force "D:\._DSCF0009.JPG" # Erfolgreich
PS D:\>

Ich habe versucht, cmd und PowerShell im normalen und erhöhten Modus zu starten, aber es passiert dasselbe. Warum schlägt es in jedem Fall fehl, außer im Explorer und in PowerShell mit -Force?

Antwort1

Ihre Datei hat das hAttribut gesetzt, was bedeutet, dass sie versteckt ist. Deshalb können Sie nicht löschen, wenn Sie deloder verwenden Remove-Item, es sei denn, Sie verwenden den -ForceParameter. VonGegenstand entfernen:

Erzwingt, dass das Cmdlet Elemente entfernt, die andernfalls nicht geändert werden können, z. B. versteckte oder schreibgeschützte Dateien oder schreibgeschützte Aliase oder Variablen.

verwandte Informationen