Como faço para compactar arquivos de pastas diferentes, com cada arquivo em sua própria pasta

Como faço para compactar arquivos de pastas diferentes, com cada arquivo em sua própria pasta

eu gostaria de compactar todos os arquivos html em todos os diretórios que estão em um diretório, enquanto excluo os arquivos descompactados.

for /r %%i in (*.html) do "c:\7-zip\7z.exe" a -aoa -mx=9 -tgzip -sdel "%%~ni.gz" "%%i"

Esta linha de comando funciona parcialmente, mas não compacta cada arquivo html em seu diretório; em vez disso, compacta tudo no diretório pai.

se eu fizer isso

for /r %%i in (*.html) do "c:\7-zip\7z.exe" a -aoa -mx=9 -tgzip -sdel "%%i.gz" "%%i"

ele compacta cada arquivo em seu diretório, mas mantém .html

eu tenho a solução

for /r %%i in (*.html) do "c:\7-zip\7z.exe" a -aoa -mx=9 -tgzip -sdel "%%~pni.gz" "%%i"

informação relacionada