O script em lote não é executado, embora seu código seja executado no CMD
Eu estava procurando uma maneira fácil de obter as informações de volumes do sistema em GB (lote), então obtive o seguinte:
for /f "tokens=1-3" %a in ('WMIC LOGICALDISK GET FreeSpace^,Name^,Size ^|FINDSTR /I /V "Name"') do @echo wsh.echo "%b" ^& " free=" ^& FormatNumber^(cdbl^(%a^)/1024/1024/1024, 2^)^& " GiB"^& " size=" ^& FormatNumber^(cdbl^(%c^)/1024/1024/1024, 2^)^& " GiB" > %temp%\tmp.vbs & @if not "%c"=="" @echo(& @cscript //nologo %temp%\tmp.vbs >> c:\test\test2.txt | type C:\test\test2.txt
Funciona bem se eu apenas copiar e colar no CMD, mas se eu o executar a partir de um arquivo .bat, ele simplesmente não fará nada.
O que eu poderia estar fazendo de errado?
PD: Não posso usar o PowerShell, preciso em lote.