Como filtrar os arquivos .svn-base da saída do comando DIR?

0

Eu queria saber como poderia fazer o seguinte (no Windows)

Eu preciso examinar o número total de caracteres no caminho completo para tudo no diretório c: \ e em todos os subdiretórios. Aqui está o comando que eu estava usando:

dir /b /s c:\directory\ > output.csv

/ B Usa o formato simples (sem informações de cabeçalho ou resumo).

/ S Exibe arquivos no diretório especificado e em todos os subdiretórios.

O problema é que c: \ directory é um checkout do SVN e tem uma tonelada de arquivos .svn-base que eu não quero ver no arquivo output.csv. Como faço para filtrar a saída do DIR, portanto, não vejo nenhum desses arquivos .svn ou .svn-base no output.csv para o qual estou enviando a saída?

Eu tentei usar o Excel para pesquisar a primeira coluna em output.csv para selecionar quaisquer linhas que contivessem 'svn', mas esse arquivo csv tem mais de 30.000 linhas nele e isso pode demorar um pouco para filtrar tudo se eu fizer assim.

Existe algo semelhante ao grep para windows que eu possa usar para realizar isso? Eu baixei o grep GNUWin32, mas quando eu tento usá-lo eu recebo um erro sobre um arquivo de biblioteca ausente.

Eu também tentei usar o switch / AH em DIR e por qualquer motivo eu ainda recebo as pastas .svn em cada subdiretório :( É muito bom que eu não esteja usando o switch para não mostrar os arquivos ocultos corretamente ..

    
por Richie086 31.10.2012 / 21:04

2 respostas

1

Em um prompt de cmd, isso deve ser feito:

dir /b /s c:\directory\ | Findstr /V /I .svn > output.csv

Se você estiver no Windows 7/8 ou tiver instalado o Powershell, sugiro que o aprenda. Em Powershell você faria algo como:

Get-ChildItem . -exclude *.svn -recurse | Select-Object Name | Export-CSV .\output.csv -NoTypeInformation
    
por 31.10.2012 / 21:16
0

Solução alternativa (para o custo do tamanho)

Antes do diretório svn export WC em export-dir e elimine este caminho .svn dir (s)

    
por 31.10.2012 / 21:48