batch error de "no se esperaba

Iniciado por castelar, 3 Marzo 2017, 11:35 AM

0 Miembros y 1 Visitante están viendo este tema.

castelar

Hola estoy intentando hacer un script con irfanview para reducir las 10 primeras imagenes de una carpeta.

este es el codigo que tengo:

Código (dos) [Seleccionar]
@echo off
setlocal enabledelayedexpansion  
SET /a cantidad=0  
 
FOR %%f IN ("*.jpg") DO (
if !cantidad!==11 goto TERMINA  
irfan.exe %%f /resize=(100,100) /resample /aspectratio /convert=th\%%f
SET /a cantidad=!cantidad!+1
)

:TERMINA
pause



me da error de  "No se esperaba /resample en este momento"

por lo que he leido es un error de sintaxis, pero no lo veo.

a ver si me podeis ayudar
gracias




castelar

Hola

Parece que tenia que escapar algunos caracteres en la linea tal que asi:

irfan.exe %%f /resize^=^(100,100^) /resample /aspectratio /convert^=th\\%%f   

gracias

Eleкtro

#2
Cita de: castelar en  3 Marzo 2017, 11:35 AM
irfan.exe %%f /resize=(100,100) /resample /aspectratio /convert=th\%%f   

Hola. Un fallo muy común en la programación de Batch es que se olvidan de utilizar las comillas dobles para encerrar argumentos...

Cita de: castelar en  3 Marzo 2017, 12:28 PMParece que tenia que escapar algunos caracteres en la linea tal que asi:

Escapar caracteres en este caso es un parche para fixear otro problema distinto.

Tan solo debes usar la sintaxis adecuada encerramendo entre comillas dobles el argumento que le estás enviando al irfanview:
irfan.exe "%%f /resize=(100,100) /resample /aspectratio /convert=th\%%f"

¡Saludos!








castelar

perfecto !

no sabia esa opcion, mucho mas legible

gracias
saludos