¿Como hago que salte un error que diga "no uses espacios por favor" y que vuelva

Iniciado por Jamjize, 28 Abril 2017, 03:57 AM

0 Miembros y 2 Visitantes están viendo este tema.

Jamjize

Hola chicos pueden ayudarme con un script? :c es que no se como solucionar un error :( , Bueno el error es que mi hermanita intento usar mi programa Batch y pues los comandos que cree no llevan espacios por ejemplo este "Jugar-sims4" y mi hermana lo ingreso asi "jugar sims4" y ahí salio el siguiente error subir fotoscertificity.com
y quiero saber: ¿Como hago que salte un error que diga "no uses espacios por favor" y que vuelva al menu?

el codigo lo dejo acá:

Código (dos) [Seleccionar]

if "%dir%"=="" (goto error)
if %dir%==1 (goto one)
if %dir%==2 (start comIAG.bat & goto volv1)
if %dir%==3 (start E:\Programas\DC.exe & goto volv1)
if %dir%==4 (start E:\Programas\Xion\xion.exe & goto volv1)
if %dir%==5 (start E:\mis_hijos\Batch\IAG_Neko-chan\david.bat & goto volv1)
if %dir%==6 (start MiCMD.lnk & goto volv1)
if /i %dir%==x (goto apagado)
if /i %dir%==r (goto reinicio)
if /i %dir%==p (goto programar)
if /i %dir%==cp (shutdown /a & goto volv1)
if /i %dir%==jugar-sims4 (start E:\%dir%\TS4.exe & goto volv1)
:error
cls
echo La opcion o el directorio ingresado no es valido
echo.
pause
goto volv1




· Los códigos deben ir en etiquetas GeSHi (corregido)
· El titulo debe ser descriptivo al problema (corregido)
· El tema debe ir en su respectivo subforo (corregido)
· Las imágenes no deben tener dimensiones mayores a 800x600 (corregido)
>aquí las reglas del foro
-Engel Lex

Eleкtro

Cita de: Jamjize en 28 Abril 2017, 03:57 AMy quiero saber: ¿Como hago que salte un error que diga "no uses espacios por favor" y que vuelva al menu?

En lugar de eso, podrías controlar la escritura de espacios en blanco para mejorar la usabilidad de la interfáz de usuario, permitiendo que tu hermano o quien quiera pueda escribir espacios. Ah, y ten presente la importancia de encerrar entre comillas dobles los miembros del código que has mostrado para evitar posibles errores de sintaxis...

Código (dos) [Seleccionar]

Set "dir=Jugar sims4"
Set "dir=%dir: =-%" & :: reemplazar espacios por guiones.
if /I "%dir%" EQU "jugar-sims4" (Start "" "E:\%dir%\TS4.exe" & GoTo :volv1)


De todas formas y respondiendo a tu pregunta original, puedes utilizar el comando FIND:
Código (dos) [Seleccionar]
Set "dir=Jugar sims4"
(Echo "%dir%"|FIND " ")1>NUL && (
   CLS
   Echo:El comando contiene espacios en blanco.
   Pause
   GoTo :volv1
)


¡Saludos!