Adicionar teste addtional para arquivos

0

O que eu preciso adicionar, para também ignorar nomes de arquivos contendo AppData com extensões .exe? Eu estou usando isso em um SetupComplete.cmd para instalação autônoma do Windows e tenho AppDataLocal.exe e AppDataRoaming.exe que são arquivos sfx e não deseja que esses excluídos. Espero que isso possa ser um curinga, algo como AppData * .exe.

forfiles /p "%WINDIR%\Setup\Files" /s /m *.* /c "cmd /c for %G in (@path) do @if /I [%~xG] neq [.reg] @echo del /F /Q %G" /d
    
por Schmitty 17.07.2015 / 19:49

1 resposta

1

Não vejo razão para usar FORFILES - é muito lento.

Eu faria algo como o seguinte:

@echo off
for /f "delims=" %%F in (
  'dir /b /s /a-d "%WINDIR%\Setup\Files"^|findstr /rive "\.reg [\]AppData[^\]*\.exe"'
) do del "%%F"

Eu canalizo um DIR / B recursivo através de FINDSTR, usando um par de expressões regulares para excluir nomes de arquivos que terminam com ".reg" ou "\ AppData * .exe", ignorando o caso. O resultado é iterado via FOR / F para que eu possa excluir cada arquivo.

    
por 17.07.2015 / 22:16