Wie kann ich eine Datei umbenennen, deren Name selbst ein vollständiger Pfad ist (zB beginnt mit "g: \")? [Duplikat]

30

Diese Frage hat hier bereits eine Antwort:

Ich habe versehentlich eine Datei mit dem Namen g:\filename.csvWindows XP über ein Python-Skript erstellt.

Beachten Sie, dass dies g:\filename.csvder Dateiname ist. Eigentlich ist es auf dem Laufwerk F: gespeichert.

Ich kann es nicht mit der Eingabeaufforderung ( ren oldfilename newfilename) oder F2in einem Explorer-Fenster umbenennen . Es heißt "Kann nicht vom Laufwerk lesen" - Windows glaubt, die Datei befindet sich auf dem Laufwerk G :.

Gibt es eine Möglichkeit, es umzubenennen?

Vineet
quelle
tut *filename.csvArbeit?
BlueRaja - Danny Pflughoeft
8
Könnten Sie auch, obwohl Sie Ihre Lösung bereits haben, den Code veröffentlichen, der die Datei erstellt hat? Ich glaube nicht, dass Sie mit den Windows-Datei-APIs einen ungültigen Dateinamen angeben können.
BlueRaja - Danny Pflughoeft
5
Sie sollten einen Fehler bei Linux / Ubuntu melden. Der Dateisystemtreiber sollte wissen, dass dies ein ungültiger Dateiname für das Ziellaufwerk ist, und daher das Erstellen einer solchen Datei nicht zulassen. Es sollte dennoch möglich sein, solche Dateien zu adressieren, wenn sie bereits existieren, um sie jedoch zu entfernen oder umzubenennen.
Devolus
2
In Bezug auf NTFS ist an diesem Dateinamen eigentlich nichts ungültig. Es ist lediglich eine Einschränkung von Windows, die verhindert, dass auf ihn richtig verwiesen wird.
Phogg

Antworten:

21

Dies könnte nicht die schnellste Lösung sein, sollte aber funktionieren.
Wenn Sie eine Live Linux-Distribution starten, können Sie diese löschen, da Linux eine andere Methode zum Identifizieren von Partitionen verwendet und nicht gezwungen ist, zu glauben, dass Ihre Datei ein Laufwerk ist. Ich schlage vor, Sie haben Parted Magic mit vielen nützlichen Tools für die Wartung von Festplatten und Systemen zur Hand.

Sekhemty
quelle
1
Ich bin Dual-Boot mit Ubuntu. Dies kann also problemlos versucht werden. Lassen Sie mich versuchen, hier Feedback zu geben. Vielen Dank.
Vineet
7
Getan. Von Ubuntu habe ich gelöscht. die Datei. Vielen Dank.
Vineet
1
Früher hatte ich vor dem Namen die bestbewertete Antwort mit \\? \. Ich habe mich geirrt und diese Methode funktioniert nicht, also habe ich meine Antwort gelöscht. Sie müssen die Methode dieser Antwort oder eine der anderen Antworten verwenden.
Scott Chamberlain
7

Wenn Sie Windows verwenden, können Sie den folgenden Trick anwenden:

1. Issue command `dir /X`
2. Find out your file in 8 dot 3 notation
3. Use 8 dot 3 notation for file operations as ren, del, copy, print and others.

Hinweis: Wenn Sie es geschafft haben, eine Datei mit einem Namen conoder einem anderen für Windows-Geräte reservierten Namen zu erstellen, haben Sie mit diesem Ansatz Pech.

Don Cesar D'Bazar
quelle
6

Sie könnten auch versuchen ...

Von einem Windows Command Prompt:

ren "F:???filename.csv" "filename.csv"

oder

ren "F:*.csv" "filename.csv"
Kevin Fegan
quelle
4

Sie könnten es immer mit Cygwin versuchen . Der darin enthaltene Pfadnamenfilter sollte dieser Art von Fehler besser entsprechen, da dies nicht gegen POSIX-Standards verstößt. Installiere bash und fileutils und versuche es dannrm /cygdrive/f/g:\\filename.csv

Reiche Homolka
quelle