Verstehen, wie Windows den Mustervergleich in der Eingabeaufforderung ausführt

2

Ich habe 500 Dateien in einem Verzeichnis, test1.txt bis test500.txt

Aus Microsofts Link http://msdn.microsoft.com/en-us/library/ff469270.aspx habe ich den Unterschied zwischen * und <nicht klar verstanden

Der folgende Befehl in der cmd-Eingabeaufforderung gibt "Datei nicht gefunden" aus

dir "test5<"

Allerdings dir "test5<<"listet alle test5 * Dateien.

Was ist der Grund für dieses Verhalten. Ich konnte keinen Artikel finden, der besser erklärt, wie sich "<" verhalten soll.

[edit 1]

Auch wenn es keine Erweiterungen gibt, dh Dateien test1 - test500, "test5???"stimmen "test5", "test50" und "test500" überein.

Soll das nicht "file not found" geben, da es drei gibt?

Sync-Master
quelle

Antworten:

2

<ist ähnlich *, bis auf einen Unterschied. <stimmt nicht mit dem letzten .im Dateinamen überein .

test5< stimmt mit nichts überein, da es nicht mit der Dateierweiterung der Dateien im Verzeichnis übereinstimmt.

test5<<stimmt mit ihnen überein, da der erste <mit den Dateinamen bis .zur Dateierweiterung und der zweite <mit der Dateierweiterung selbst übereinstimmt.

Der Hochstapler
quelle
das erklärt. Danke vielmals. Auch wenn es keine Erweiterungen gibt, "test5 ???" stimmt mit "test5", "test50" und "test500" überein. Soll "Datei nicht gefunden" nicht angegeben werden, da es drei gibt? 'S
SyncMaster
@SyncMaster Die Sache ist, die Site, die Sie gepostet haben, erklärt den Algorithmus, der nur erkennt, ob eine bestimmte Datei ein Muster ist. Es wird nicht vollständig erklärt, wie das Muster interpretiert wird . ?Bedeutet wahrscheinlich "Null oder Eins" in der Windows-Eingabeaufforderung. Die Erklärungen auf dieser Seite könnten irreführend sein.
Der Hochstapler
0

Der Artikel, den Sie gepostet haben, behandelt Algorithmen , keine Befehle.

Die <und >sind Umleitungsoperatoren für die Eingabeaufforderung.

Keltari
quelle
Ich verwende sie nicht als Umleitungsoperator. Ich benutze es in einem Muster, um Dateien abzugleichen.
SyncMaster
1
@SyncMaster Ich bin mir nicht sicher, wie ich das deutlicher sagen soll, es funktioniert nicht so
Keltari
Eigentlich schon, Keltari. Versuch es. Bereiten Sie sich auf eine weitere Microsoft- cmdÜberraschung vor.
JdeBP
Nun, das ist neu für mich
Keltari