elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Me dice (No se esperaba goto en este momento)(Solucionado)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Me dice (No se esperaba goto en este momento)(Solucionado)  (Leído 3,527 veces)
David8choceros8chounos

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Me dice (No se esperaba goto en este momento)(Solucionado)
« en: 1 Marzo 2017, 18:21 pm »

Código
  1. set /p a =
  2.  
  3. if %a%==1 goto log
  4. if %a%==2 goto exit
  5.  
Me podrian ayudar ?  :(                                  ;D les agradeceria mucho que me dijieran plis  :-*   Gracias si me leiste    XD      
Citar
De Mi...
Y esto esta en .bat eh? las etiquetas aunque no esten no importa.


« Última modificación: 3 Marzo 2017, 16:24 pm por David8choceros8chounos » En línea

Orubatosu


Desconectado Desconectado

Mensajes: 2.515


Ver Perfil WWW
Re: Me dice (No se esperaba goto en este momento
« Respuesta #1 en: 1 Marzo 2017, 18:30 pm »

Deberías pedir que lo muevan a batch, porque esto es código de consola DOS ¿no?


En línea

"When People called me freak, i close my eyes and laughed, because they are blinded to happiness"
Hideto Matsumoto 1964-1998
David8choceros8chounos

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re Re: Me dice (No se esperaba goto en este momento
« Respuesta #2 en: 1 Marzo 2017, 19:44 pm »

Esta en batch  :-\ como se solusiona
En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.788



Ver Perfil
Re: Me dice (No se esperaba goto en este momento
« Respuesta #3 en: 2 Marzo 2017, 00:31 am »

Hola. Los mensajes de error que empiezan por "No se esperaba X..." implican un error de sintaxis en el código.

El error lo tienes concretamente al dejar un espacio en blanco entre el nombre de la variable y el operador de asignación (set /p a =), con eso lo que consigues es crear una variable de nombre "a " (nótese el espacio), no "a", y entonces la estás intentando evaluar mal, por que para evaluar esa variable deberías escribir %a %, no %a% en las condicionales de tu código.
En otras palabras, el error de "No se esperaba GoTo" salta por que estás intentando comparar NADA (o nulo), con 1. Para que se entienda mejor, esto es lo que realmente estás haciendo: if ==1 goto log.

Este problema te sucede basicamente por que estás utilizando malos hábitos de programación en Batch con los que solo conseguirás generar errores tontos. Debes hacer uso de las comillas dobles para encerrar los nombres de las variables y los parámetros/argumentos en general para evitar que esto te vuelva a suceder. Y de paso utiliza también los operadores de apertura y cierre de agrupación de comandos (los paréntesis)...

Ejemplo:

Código
  1. @Echo OFF
  2.  
  3. SET /P "var="
  4. If "%var%" EQU "1" (GoTo :Log)
  5. If "%var%" EQU "2" (GoTo :Exit)
  6.  
  7. :Log
  8. REM ...
  9.  
  10. REM ...
( Aunque tu intención sea evaluar valores númericos (1, 2) la variable %var% es un string, y se debe tratarlo como tal en las condicionales. )

¡Saludos!
« Última modificación: 2 Marzo 2017, 00:40 am por Eleкtro » En línea

Hitman062

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: Re: Re: Me dice (No se esperaba goto en este momento
« Respuesta #4 en: 2 Marzo 2017, 07:11 am »

Hola amigo, lo probé al código y anda bien Pero asegúrate de escribir todo el código completo
Código
  1. @echo off
  2. Cls
  3. Set /p a=
  4. If %a%==1 goto log
  5. If %a%==2 goto exit
  6.  
  7. :log
  8. Todo el comando que quieras que se ejecute con el 1
  9.  
  10. Todo el comando que quieras que se ejecute con el 2

Espero que te sirva

Enviado desde mi LG-H320 mediante Tapatalk
« Última modificación: 2 Marzo 2017, 07:30 am por Eleкtro » En línea

David8choceros8chounos

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: Me dice (No se esperaba goto en este momento
« Respuesta #5 en: 2 Marzo 2017, 18:29 pm »

Gracias :)  ;D ;D ;D
DE DAVID8CHOCEROS8CHOUNOS
para la 2 penultima persona que comento (Elektro)
« Última modificación: 2 Marzo 2017, 19:18 pm por simorg » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema no se esperaba XXX en este momento [Batch] « 1 2 »
Scripting
ELVJop 12 19,207 Último mensaje 23 Abril 2012, 22:31 pm
por Eleкtro
(Batch) Error "No se esperaba GOTO en este momento"
Scripting
Anastacio 3 7,353 Último mensaje 1 Julio 2014, 04:39 am
por Eleкtro
No se esperaba 0 en este momento
Scripting
amok 0 1,749 Último mensaje 12 Noviembre 2016, 20:39 pm
por amok
No se esperaba en este momento. Error [Batch]
Scripting
Fron99 3 3,980 Último mensaje 3 Abril 2017, 12:13 pm
por Fron99
Error: no se esperaba / en este momento
Scripting
Jamjize 4 7,186 Último mensaje 26 Mayo 2017, 21:44 pm
por Jamjize
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines