Szenario: ein Ordner mit dem Namen „x“ in einem bestimmten Pfad erstelltPowershell: New-Item -name < >
Ich versuche, um zu sehen, wenn Folgendes möglich:
wenn ich Erstellen Sie eine Datei mit dem Namen "x" im selben Pfad, in dem der Ordner "x" vorhanden ist, ohne eine Erweiterung im Parameter name anzugeben.
verwenden ich den Befehl new-item -name x -path <> -force
Ausgang: sein einen Fehler werfen und ist nicht in der Lage, eine Datei mit dem gleichen Namen
jedoch erstellen , wenn ich die Erweiterung ".txt" angeben kann.
Ich habe versucht, zuerst die Datei und dann den Ordner zu erstellen, bekomme aber einen weiteren Fehler. Ich habe den Force-Parameter verwendet, um den Ordner zu erstellen. Es gibt keinen Fehler, aber wenn ich den Pfad für den Ordner überprüfe, sehe ich es nicht! Die Datei ist aber da.
Ich würde gerne wissen, warum es scheitert und gibt es einen Workaround dafür?
FOLDER zuerst erstellt, und dann Datei Fehler beim Erstellen
PS C:\Windows\system32> New-Item -name Test1 -path E:\ -ItemType directory
New-Item -name Test1 -path E:\ -ItemType file -force
Directory: E:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 16-05-2016 20:20 Test1
New-Item : Access to the path 'E:\Test1' is denied.
At line:3 char:1
+ New-Item -name Test1 -path E:\ -ItemType file -force
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : PermissionDenied: (E:\Test1:String) [New-Item], UnauthorizedAccessException
+ FullyQualifiedErrorId : NewItemUnauthorizedAccessError,Microsoft.PowerShell.Commands.NewItemCommand
Datei zuerst ERSTELLT, DANN Fehler beim Erstellen der FOLDER
PS C:\Windows\system32>
New-Item -name Test2 -path E:\ -ItemType file -force
Directory: E:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 16-05-2016 20:26 0 Test2
PS C:\Windows\system32> New-Item -name Test2 -path E:\ -ItemType directory
New-Item : An item with the specified name E:\Test2 already exists.
At line:1 char:1
+ New-Item -name Test2 -path E:\ -ItemType directory
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ResourceExists: (E:\Test2:String) [New-Item], IOException
+ FullyQualifiedErrorId : DirectoryExist,Microsoft.PowerShell.Commands.NewItemCommand
Wenn ich .txt im Parameter name bin in der Lage, mit dem gleichen Namen eine Datei zu erstellen, obwohl es einen Ordner gibt. aber ohne Verlängerung kann ich nicht, weißt du warum? – Yasha
Ich möchte nur wissen, warum wir diese Aktion nicht tun können. – Yasha
@Yasha Wenn Sie ".txt" im Dateinamen hinzufügen, dann ist es nicht mehr dasselbe, oder? Dateien und Ordner in allen wichtigen Dateisystemen können nicht denselben Namen haben. Ein Verzeichnis ist ein spezieller Dateityp, der aus der Sicht des Benutzers andere Dateien enthalten kann. – iTayb