Remover aspas na saída Forfiles {cmd}

3

Então, eu estou executando este comando:

FORFILES /S /M *.dmg /C "cmd /c if @fsize equ 1595694080 echo @fname"

e a saída:

"058-26174-078"

mas o problema é que eu quero o nome sem as citações

assim: 058-26174-078

    
por Hacker Dude 15.01.2016 / 15:42

1 resposta

2

Como faço para remover as aspas de uma variável em um cmd shell?

Você precisa usar a extensão do parâmetro ~ junto com for /f para fazer isso.

Use o seguinte comando:

for /f %i in ('FORFILES /S /M *.dmg /C "cmd /c if @fsize equ 1595694080 echo @fname"') do @echo %~i

Para definir uma variável e em um arquivo em lotes, use o seguinte comando:

for /f %%i in ('FORFILES /S /M *.dmg /C "cmd /c if @fsize equ 1595694080 echo @fname"') do @set MyVariable=%%~i

Notas:

  • %~1 Expandir %1 removendo as aspas vizinhas (")
  • Em um arquivo de lote, substitua %i por %%i e %~i por %%~i

Leitura Adicional

por 15.01.2016 / 17:53