Die Verzeichnissuche in der Windows-Eingabeaufforderung zeigt eine falsche Ausgabe an

2157
siliconpi

Ich suchte nach dem folgenden und gab mir die genaue Ausgabe (Ordnernamen geändert)

C:\temp>dir *950*.pdf /s Volume in drive C has no label. Volume Serial Number is ABCDE  Directory of C:\temp\e\h\d\20100809  08/08/2010 10:54 PM 1,632,434 09_08_2010_004.pdf 08/08/2010 10:54 PM 1,368,895 09_08_2010_003.pdf 08/08/2010 10:54 PM 2,111,360 09_08_2010_005.pdf 3 File(s) 5,112,689 bytes 

Ich verstehe nicht, warum " 950 " gegen diese 3 Dateien abgeglichen wird ...!

Edit1

Ich habe es diesmal in c: \ temp \ verschoben und es passt zu einem von ihnen!

 C:\temp\20100809>dir *950*.pdf Volume in drive C has no label. Volume Serial Number is ABCDE  Directory of C:\temp\20100809  08/08/2010 10:54 PM 2,111,360 09_08_2010_005.pdf 

Edit2

@ gravvitys Antwort ist auf den Punkt!

C:\temp\20100809>dir *950*.pdf /x Volume in drive C has no label. Volume Serial Number is ABCDE  Directory of C:\temp\20100809  08/08/2010 10:54 PM 2,111,360 09507E~1.PDF 09_08_2010_005.pdf 
2
Können Sie dies in einer anderen Verzeichnisstruktur wiedergeben? Dennis Williamson vor 13 Jahren 0
@Dennis - siehe Edit1 siliconpi vor 13 Jahren 0

2 Antworten auf die Frage

8
grawity
dir /x 

Aus Kompatibilitätsgründen generiert Windows für jeden erstellten langen Dateinamen einen 8.3-Namen, und der Wildcard-Übereinstimmungscode ( FindFirstFile()) überprüft sowohl den ursprünglichen als auch den verkürzten Namen. Zeigt dir /xan, welche Kurznamen jeder Datei zugewiesen werden.

Normalerweise sind die automatisch generierten Kurznamen aussehen 090820~1.PDFund 090820~2.PDFund so weiter, aber es gibt Ausnahmen :

[...] Wenn bereits mindestens 4 Dateien oder Ordner mit den gleichen ersten 6 Zeichen in ihren Kurznamen vorhanden sind, wird der entfernte LFN stattdessen auf die ersten beiden Buchstaben des Basisnamens gekürzt (oder 1, wenn der Basisname nur einen Buchstaben enthält)., gefolgt von 4 hexadezimalen Ziffern, die von einem undokumentierten Hash des Dateinamens abgeleitet wurden, gefolgt von [...]

Das Verschieben einer Datei innerhalb derselben Partition ändert keinen ihrer Namen, sondern verschiebt sie nur.


Wenn das NTFS - Dateisystem verwenden, 8.3 Namen Erstellung kann deaktiviert werden systemweit mit:

fsutil behavior set disable8dot3 

Dies wirkt sich jedoch nicht auf vorhandene Namen aus.

+1 Brillante Antwort! (vielleicht nicht so geniale Umsetzung) Dennis Williamson vor 13 Jahren 1
0
user48918

Ich habe dieses Problem und war versucht, mit fsutil kurze Namen systemweit zu deaktivieren, entschied mich aber dagegen. Stattdessen habe ich herausgefunden, dass Sie fsutil.exe verwenden können, um die Datei mit einem besseren Kurznamen zu verknüpfen, wie in:

fsutil.exe file setshortname 175002886.pdf ~1752886.pdf

Sie müssen dies als Administrator tun.