
Acho que o PowerShell, de certa forma, pode fazer expressões regulares até certo ponto. Não há dúvida de que pode fazer mais, mas não vejo por que não está aqui. Estou tentando usar um regex para especificar arquivos/diretórios.
Por exemplo, quando eu tiver um diretório chamado 'qwe' isso irá mostrá-lo
PS C:\Users\bob\a> Get-ChildItem C:\Users\bob\a\[qwe][qwe][qwe]
d---- 24/08/2014 1:28 PM qwe
Mas eu não posso fazer
PS C:\Users\bob\a> Get-ChildItem C:\Users\bob\a\q.e
(para pegar o diretório qwe)
E se eu fizer
PS C:\Users\bob\a> Get-ChildItem C:\Users\bob\a\..
Em seguida, ele volta para um diretório e não há como fazê-lo corresponder a um arquivo/diretório de mais de 2 caracteres ou mesmo 2 caracteres, com o regex..
No entanto, ele suporta este aspecto de expressões regulares [abcd] (uma classe de caracteres para corresponder a um 'a' ou 'b' ou 'c' ou 'd') ou [az] embora seja um pouco não regex como [abcd] corresponde apenas onde o resultado é um caractere. Com um regex adequado, normalmente corresponderia a qualquer coisa com esse caractere, inclusive quando há mais do que esse caractere.
Responder1
Ponto tem um significado especial para nomes de arquivos, então você deve usar Where-Object (ou sua forma abreviada) para esse tipo de filtragem:
Get-ChildItem . | Where-Object { $_.Name -match '^q.e$' }