Noções básicas sobre como o Windows faz a correspondência de padrões no prompt de comando

2

Eu tenho 500 arquivos em um diretório, test1.txt a test500.txt

No link da Microsoft http://msdn.microsoft.com/en-us/library/ff469270.aspx , não entendi claramente a diferença entre * e <

O seguinte comando no cmd-prompt lança "Arquivo não encontrado"

dir "test5<"

No entanto, dir "test5<<"lista todos os arquivos test5 *.

Qual o motivo desse comportamento? Não foi possível encontrar nenhum artigo que explique melhor como se espera que "<" se comporte.

[editar 1]

Além disso, se não houver extensões, ou seja, os arquivos test1 - test500, "test5???"correspondem a "test5", "test50" e "test500".

Isso não deveria fornecer "arquivo não encontrado", pois existem três?

Mestre da sincronização
fonte

Respostas:

2

<é semelhante a *, exceto por uma diferença. <não corresponde ao último .no nome do arquivo.

test5< não corresponde a nada, porque não corresponde à extensão dos arquivos no diretório

test5<<corresponde a eles, porque o primeiro <corresponde aos nomes dos arquivos até o .da extensão do arquivo e o segundo <corresponde à própria extensão do arquivo.

Der Hochstapler
fonte
Isso explica. Muito obrigado. Além disso, se não houver extensões, "test5 ???" corresponde a "test5", "test50" e "test500". Não é suposto dar "arquivo não encontrado", pois existem três?
SyncMaster
@SyncMaster O problema é que o site que você postou explica o algoritmo que detecta apenas se um determinado arquivo é um padrão. Não explica completamente como o padrão é interpretado . ?provavelmente significa "zero ou um" caracteres no prompt de comando do Windows. As explicações nesse site podem ser enganosas.
Der Hochstapler /
0

O artigo que você postou está discutindo algoritmos , não comandos.

Os operadores de redirecionamento< e >são para o prompt de comando.

Keltari
fonte
Não os estou usando como um operador de redirecionamento. Estou usando-o dentro de um padrão para corresponder aos arquivos.
SyncMaster
11
@SyncMaster Im não sei como dizer isso mais claro, ele não funciona dessa maneira
Keltari
Na verdade, Keltari. Tente. Prepare-se para mais uma cmdsurpresa da Microsoft .
JdeBP
Bem isso é novo para mim
Keltari