
Estoy usando un archivo por lotes para comprimir archivos en archivos separados usando 7-zip. El archivo por lotes contiene esta línea:
FOR %%A IN (*.xls) DO "c:\program files\7-zip\7z.exe" u -mx9 -m0=lzma2:d16m "%%~nA.7z" "%%A"
Desafortunadamente, debido a la naturaleza de CMD, esta línea comprime ambos *.xls
archivos.y *.xlsx
archivos que no tengo intención.
¿Cómo consigo que ignore *.xlsx
los archivos?
Respuesta1
Todo lo que necesitas hacer es probar cuál es la extensión del archivo.
for %%A in (*.xls) do if /i "%%~xA"==".xls" (
"c:\program files\7-zip\7z.exe" u -mx9 -m0=lzma2:d16m "%%~nA.7z" "%%A"
)