elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
29 Mayo 2012, 06:57  


Tema destacado: Únete al Grupo Steam elhacker.NET

+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting (Moderadores: Novlucker, Leo Gutiérrez., EleKtro H@cker)
| | |-+  [ Batch] (Solucionado) Problema sobre argumentos %1
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [ Batch] (Solucionado) Problema sobre argumentos %1  (Leído 672 veces)
EleKtro H@cker
Moderador
***
Desconectado Desconectado

Mensajes: 1.348


(8) I will have that power!! (8) Jarkor! :D


Ver Perfil
[ Batch] (Solucionado) Problema sobre argumentos %1
« en: 6 Noviembre 2011, 14:18 »

Hola

Necesito crear una variable de esta manera:

Código
Set 10=$219

El problema viene cuando intento usarla...

Código
Echo %10%

Se que el problema es porque el código de arriba en realidad hace esto:

Código
Echo %1

¿Como puedo evitar el maldito argumento en este caso?


« Última modificación: 6 Noviembre 2011, 18:39 por EleKtro H@cker » En línea

Siempre habrá alguien más ignorante que uno mismo, Como por ejemplo el nuevo presidente de la SGAE:

"La banda ancha es totalmente innecesaria para navegar convencionalmente, Solo sirve para descargar megas y megas grandisimos, Y tal."

PD: Volviendo a la era de los 56 k.

$Edu$


Desconectado Desconectado

Mensajes: 1.416



Ver Perfil
Re: [ Batch] Problema sobre argumentos %1
« Respuesta #1 en: 6 Noviembre 2011, 14:52 »

Queres que muestre "$219" ? no uses el nombre de la variable como 10, usalo como p10 por ejemplo


En línea

"Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas." - Albert Einstein.
EleKtro H@cker
Moderador
***
Desconectado Desconectado

Mensajes: 1.348


(8) I will have that power!! (8) Jarkor! :D


Ver Perfil
Re: [ Batch] Problema sobre argumentos %1
« Respuesta #2 en: 6 Noviembre 2011, 15:30 »

Queres que muestre "$219" ? no uses el nombre de la variable como 10, usalo como p10 por ejemplo

Hola edu, gracias por contestar, pero esa solución no la puedo aplicar... Porque lo que intento es setear el argumento del CALL

Mira, esto es lo que intento hacer:

Código
@echo off
 
Colous writesec "[7] Eliminando bla bla bla bla..."
echo+
Colous writesec "[14] $195          $180 0%%"

 
REM Llamo a mi procedimiento con el argumento "50"

call :PROGRESSBAR 50
pause>nul
 
:#######################################################
 
:PROGRESSBAR
:~~~~~~~~~~~
 
Set 10=$219
Set 20=$219$219
Set 30=$219$219$219
Set 40=$219$219$219$219
Set 50=$219$219$219$219$219
Set 60=$219$219$219$219$219$219
Set 70=$219$219$219$219$219$219$219
Set 80=$219$219$219$219$219$219$219$219
Set 90=$219$219$219$219$219$219$219$219$219
Set 100=$219$219$219$219$219$219$219$219$219

REM El dibujito...

colous 14 0 04,03 %%1%

REM El porcentaje...

colous 14 0 15,03 %1%%
 
Goto :EOF


El resultado es esto:




Y mi intención es que quede así:

« Última modificación: 6 Noviembre 2011, 15:32 por EleKtro H@cker » En línea

Siempre habrá alguien más ignorante que uno mismo, Como por ejemplo el nuevo presidente de la SGAE:

"La banda ancha es totalmente innecesaria para navegar convencionalmente, Solo sirve para descargar megas y megas grandisimos, Y tal."

PD: Volviendo a la era de los 56 k.

Leo Gutiérrez.
. . .. ... ..... ........ ............. .....................
Moderador
***
Desconectado Desconectado

Mensajes: 2.968


/^$/


Ver Perfil WWW
Re: [ Batch] Problema sobre argumentos %1
« Respuesta #3 en: 6 Noviembre 2011, 16:39 »

A ver. en teoría no puedes, porque las variables con números están reservadas por las variables parametrizadas, %0 .. %9, así que no es recomendable y quizás no se pueda, además que en cualquier lenguaje, cualquiera, marca como regla que las variables jamás, jamás deben empezar por números, no es lógico, así que busca como llamar de otra manera tus variables.
En línea

Código
(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}
 

leorocko13@hotmail.com
https://github.com/leogtzr/
EleKtro H@cker
Moderador
***
Desconectado Desconectado

Mensajes: 1.348


(8) I will have that power!! (8) Jarkor! :D


Ver Perfil
Re: [ Batch] Problema sobre argumentos %1
« Respuesta #4 en: 6 Noviembre 2011, 18:38 »

Vale muchas gracias por la aclaración Leo

Al final lo he resuelto sin engorronear mucho el código xD


Código
@echo off
 
Colous writesec "[7] Eliminando bla bla bla bla..."
echo+
Colous writesec "[08] $195          $180 0%%"
 
call :PROGRESSBAR 50
pause>nul
 
:#######################################################
 
:PROGRESSBAR
:~~~~~~~~~~~
 
If %1==10 (Set PROGRESS=$219)
If %1==20 (Set PROGRESS=$219$219)
If %1==30 (Set PROGRESS=$219$219$219)
If %1==40 (Set PROGRESS=$219$219$219$219)
If %1==50 (Set PROGRESS=$219$219$219$219$219)
If %1==60 (Set PROGRESS=$219$219$219$219$219$219)
If %1==70 (Set PROGRESS=$219$219$219$219$219$219$219)
If %1==80 (Set PROGRESS=$219$219$219$219$219$219$219$219)
If %1==90 (Set PROGRESS=$219$219$219$219$219$219$219$219$219)
If %1==100 (Set PROGRESS=$219$219$219$219$219$219$219$219$219)
 
colous 10 0 04,03 %PROGRESS%
colous 10 0 15,03 %1%%
Goto :EOF
En línea

Siempre habrá alguien más ignorante que uno mismo, Como por ejemplo el nuevo presidente de la SGAE:

"La banda ancha es totalmente innecesaria para navegar convencionalmente, Solo sirve para descargar megas y megas grandisimos, Y tal."

PD: Volviendo a la era de los 56 k.

Leo Gutiérrez.
. . .. ... ..... ........ ............. .....................
Moderador
***
Desconectado Desconectado

Mensajes: 2.968


/^$/


Ver Perfil WWW
Re: [ Batch] (Solucionado) Problema sobre argumentos %1
« Respuesta #5 en: 6 Noviembre 2011, 19:40 »

Perfecto.
En línea

Código
(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}
 

leorocko13@hotmail.com
https://github.com/leogtzr/
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines