Compreendendo como o Windows faz correspondência de padrões no prompt de comando

Compreendendo como o Windows faz correspondência de padrões no prompt de comando

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

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

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

dir "test5<"

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

Qual é o motivo desse comportamento. Não consegui encontrar nenhum artigo que explicasse melhor como se espera que "<" se comporte.

[editar 1]

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

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

Responder1

<é semelhante a *, exceto por uma diferença. <não corresponde ao último .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é a .extensão do arquivo e o segundo <corresponde à própria extensão do arquivo.

Responder2

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

Os <e >sãooperadores de redirecionamentopara o prompt de comando.

informação relacionada