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
| | |-+  (SOLUCIONADO)[Batch] Error en codigo. Ayuda!
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: (SOLUCIONADO)[Batch] Error en codigo. Ayuda!  (Leído 3,391 veces)
Fran2013

Desconectado Desconectado

Mensajes: 56


Tengo Un Arma... Y se como usarla.


Ver Perfil
(SOLUCIONADO)[Batch] Error en codigo. Ayuda!
« en: 12 Noviembre 2013, 03:19 am »

Hola y gracias por leer el tema.
Hace poco empece con batch.
La verdad que me pareció un buen lenguaje de scripting sobretodo
por lo simple que es y por las incontables maneras de interactuar con el  propio
sistema operativo .

El problema es el siguiente:  eh creado un codigo que hace una pregunta y luego
almacena la respuesta en una variable. Luego pasa a un if donde se cumprueba si la respuesta es "SI". si la respuesta es "SI" vuelve ha preguntar lo mismo...

Código:
@echo off
:pregunta
set /p %hola% = Bucle Infinito? :  
if %hola%==SI goto pregunta

Agradezco que me indicaran el fallo.



SALUDOS.


« Última modificación: 12 Noviembre 2013, 05:23 am por Fran2013 » En línea





Si tuviera el código fuente de tu amor, haría que amara al objeto "YO".
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.788



Ver Perfil
Re: [Batch] Error en codigo. Ayuda!
« Respuesta #1 en: 12 Noviembre 2013, 05:08 am »

Código:
@echo off
:pregunta
set /p %hola% = Bucle Infinito? :  
if %hola%==SI goto pregunta

El fallo principal es que al setear debes escribir el nombre de la variable sin el operador "%":
Código:
set /p hola

Aparte de eso no debes dejar ningún espacio antes ni después del operador "=", y la escritura del código en general sigue los malos hábitos de los que empiezan a programar en Batch, te suegiero que te acostumbres a escribir de la manera que te muestro a continuación porque de lo contrario te van a salir muchos errores a menudo:

Código
  1. @Echo OFF
  2.  
  3. :pregunta
  4. SET /p "hola=Bucle Infinito?:"  
  5.  
  6. IF /I "%hola%" EQU "SI" (goto :pregunta)
  7.  
  8. Pause&Exit

batch.
me pareció un buen lenguaje de scripting
por las incontables maneras de interactuar con el  propio sistema operativo.

Solo puedo decirte que a la larga te darás cuenta de que es todo lo contrario y que estás perdiendo el tiempo (sobretodo viniendo de Python),
Batch es práctico para tareas simples, muy simples, y sobre lo de las incontables maneras de... se quedan en un par de comandos internos útiles, el resto son aplicaciones (llamados comandos externos) que no forman parte del lenguaje y los puedes llamar desde cualquier otro lenguaje,
en resumen cualquier lenguaje es capaz de hacer lo mejor que se pueda llegar a programar en Batch, en la mitad de tiempo, y con las incontables mejoras que esto supone, sobretodo en velocidad de ejecución, Batch es MUY lento.

Saludos!


« Última modificación: 12 Noviembre 2013, 05:19 am por EleKtro H@cker » En línea

Fran2013

Desconectado Desconectado

Mensajes: 56


Tengo Un Arma... Y se como usarla.


Ver Perfil
Re: [Batch] Error en codigo. Ayuda!
« Respuesta #2 en: 12 Noviembre 2013, 05:40 am »

El fallo principal es que al setear debes escribir el nombre de la variable sin el operador "%":
Código:
set /p hola

Aparte de eso no debes dejar ningún espacio antes ni después del operador "=", y la escritura del código en general sigue los malos hábitos de los que empiezan a programar en Batch, te suegiero que te acostumbres a escribir de la manera que te muestro a continuación porque de lo contrario te van a salir muchos errores a menudo:

Código
  1. @Echo OFF
  2.  
  3. :pregunta
  4. SET /p "hola=Bucle Infinito?:"  
  5.  
  6. IF /I "%hola%" EQU "SI" (goto :pregunta)
  7.  
  8. Pause&Exit

Solo puedo decirte que a la larga te darás cuenta de que es todo lo contrario y que estás perdiendo el tiempo (sobretodo viniendo de Python),
Batch es práctico para tareas simples, muy simples, y sobre lo de las incontables maneras de... se quedan en un par de comandos internos útiles, el resto son aplicaciones (llamados comandos externos) que no forman parte del lenguaje y los puedes llamar desde cualquier otro lenguaje,
en resumen cualquier lenguaje es capaz de hacer lo mejor que se pueda llegar a programar en Batch, en la mitad de tiempo, y con las incontables mejoras que esto supone, sobretodo en velocidad de ejecución, Batch es MUY lento.
 
Saludos!

Muchas Gracias Electro, esa pequeña correcion vale muchos errores en este lenguaje. La verdad es que pensaba utilizar batch para tareas simples...
Aunque como tu dices , es mucho mas eficiente programar por ejemplo en python
que en batch.

SALU

En línea





Si tuviera el código fuente de tu amor, haría que amara al objeto "YO".
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Personalizar error del include [Solucionado y código aquí]
PHP
dimitrix 5 4,223 Último mensaje 9 Enero 2008, 22:43 pm
por dimitrix
[BATCH] problema con código (solucionado) « 1 2 »
Scripting
corax 13 7,444 Último mensaje 10 Noviembre 2009, 15:00 pm
por SuperDraco
Ayuda con Batch. [Solucionado]
Scripting
BlacKGilgamesH 2 3,502 Último mensaje 6 Abril 2010, 20:25 pm
por BlacKGilgamesH
Batch y Drive Snapshot Como podria capturar un codigo de error?
Scripting
Shadow 4 4,496 Último mensaje 3 Mayo 2011, 15:42 pm
por SuperDraco
codigo de error 0x80070035 [solucionado]
Redes
Gcb93 2 117,119 Último mensaje 20 Julio 2011, 00:03 am
por Gcb93
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines