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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Parámetros en Batch [AYUDA]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Parámetros en Batch [AYUDA]  (Leído 4,918 veces)
.:Xx4NG3LxX:.

Desconectado Desconectado

Mensajes: 203



Ver Perfil WWW
Parámetros en Batch [AYUDA]
« en: 21 Diciembre 2019, 23:21 pm »

NECESITO AYUDA!!!

Hola hackers, necesito ayuda con el temita este de los parámetros.

Lo que quiero saber exactamente es como definir
  • %1
  • %2... etc

CUALQUIER AYUDA SE AGRADECE, GRACIAS!!!


« Última modificación: 21 Enero 2020, 22:16 pm por .:Xx4NG3LxX:. » En línea

"Quizá Batch no sea un lenguaje de programación, pero no obstante deja de ser útil. Asi que no anden diciendo «Que ganas de perder el tiempo»"
Serapis
Colaborador
***
Desconectado Desconectado

Mensajes: 3.391


Ver Perfil
Re: Parámetros en Batch [AYUDA]
« Respuesta #1 en: 22 Diciembre 2019, 01:46 am »

Son variables... las variables toman valores.

Dado que no son específicas a ningún caso concreto, esto es son genéricos, el nombre es irrelevante, excepto su orden... %1 representa el valor asignado a dicha variable (parámetro), el %2 representa al segundo parámetro etc...

por ejemplo supongamos que se quiere llamar a un programa que va a comprimir, y aparte de la ruta permite ciertos parámetros...
Se podría invocar como:
programa.exe "ruta..." x 1 -d

un bat por ejemplo, representará la ruta con %1, el parámetro x con %2, el valor del tercer parámetro (ese '1'), con %3 y el valor del parámetro '-d' se asignará a %4...

Supongamos que el programa también decidiera interpretar la ruta en otro orden, podría asignarle un prefijo para reconocerlo (pongamos 'r')
...entonces, todavía se podría crear una entrada al menú contextual así:
programa.exe "x" "5" "-de" "r=" %1
es decir el menú contextual recibirá una ruta (1 fichero , una carpeta o más varios), se asigna a ese %1... nota que el resto de parámetros quedan fijos en el menú cotextual... (observa el '5' y el '-de')

Más retorcido aún, esa entrada al menú contextual, podría derivarse a un bat y el bat enviarlo a un ejecutable...
Entonces ese bat asignaría estos valores a cada parámetro según el orden enviado desde el menu contextual (señalado más arriba), que invocando al ejecutable pondría:
programa.exe %1 %2 %3 %4

Ahora la ruta estaría en el parámetro %4, porque es ese el orden en que se fijó en el menú contextual y su valor (contenido) sería: 'r="C:\la ruta\adonde sea\fichero.ext" ', dado el caso que el fichero seleccionado cuando el menú contextual lo active fuere: "C:\la ruta\adonde sea\fichero.ext"

En cualquier caso considera que el %0 es el propio ejecutable (que queda filtrado), y todo lo que venga detrás son los parámetros, lo habitual es recibir al menos un parámetro (típicamente una ruta), pero incluso ninguno... solo invocar el programa lo abre...

En resumen, cada variable así representa el enésimo parámetro recibido (considerado como tal).


« Última modificación: 22 Diciembre 2019, 01:50 am por NEBIRE » En línea

.:Xx4NG3LxX:.

Desconectado Desconectado

Mensajes: 203



Ver Perfil WWW
Re: Parámetros en Batch [AYUDA]
« Respuesta #2 en: 22 Diciembre 2019, 02:50 am »

Muchas gracias por tu ayuda!!!

Si tengo otra duda te aviso, ok?

Me podrías hacer un ejemplo? Si no es mucho pedir? Es para ver si entendí del todo bien. :xD

DE VERDAD MUCHAS GRACIAS
« Última modificación: 22 Diciembre 2019, 03:16 am por ÁngelSsr » En línea

"Quizá Batch no sea un lenguaje de programación, pero no obstante deja de ser útil. Asi que no anden diciendo «Que ganas de perder el tiempo»"
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.878



Ver Perfil
Re: Parámetros en Batch [AYUDA]
« Respuesta #3 en: 24 Diciembre 2019, 10:47 am »

un bat por ejemplo, representará la ruta con %1, el parámetro x con %2, el valor del tercer parámetro (ese '1'), con %3 y el valor del parámetro '-d' se asignará a %4...

Te olvidaste de la variable de parámetro '%0', que es la que en realidad representa la ruta de inicio del script. Siguiendo tu ejemplo genérico, si hablásemos del uso de estas variables en el registro de Windows con la intención de asociar un programa que tome como parámetro la ruta actual del archivo o directorio seleccionado, ahí si que se especificaría '%1'.

Aparte, el valor de estas variables se puede definir en el script de forma arbitraria para enviar los argumentos que una subrutina deba procesar.

Más info aquí: https://foro.elhacker.net/scripting/tema_bloqueado_hasta_finalizar_el_tuto_tutorial_extendido_de_aprendizaje_batch-t375135.0.html;msg1797955#msg1797955

Y aquí: https://ss64.com/nt/syntax-args.html

Saludos
« Última modificación: 24 Diciembre 2019, 10:52 am por Eleкtro » En línea



.:Xx4NG3LxX:.

Desconectado Desconectado

Mensajes: 203



Ver Perfil WWW
Re: Parámetros en Batch [AYUDA]
« Respuesta #4 en: 24 Diciembre 2019, 16:09 pm »

Muchísimas gracias!! De verdad. Me sirvió mucho.

Código
  1. GRACIAS
En línea

"Quizá Batch no sea un lenguaje de programación, pero no obstante deja de ser útil. Asi que no anden diciendo «Que ganas de perder el tiempo»"
Serapis
Colaborador
***
Desconectado Desconectado

Mensajes: 3.391


Ver Perfil
Re: Parámetros en Batch [AYUDA]
« Respuesta #5 en: 24 Diciembre 2019, 19:40 pm »

Te olvidaste de la variable de parámetro '%0', que es la que en realidad representa la ruta de inicio del script. Siguiendo tu ejemplo genérico, si hablásemos del uso de estas variables en el registro de Windows con la intención de asociar un programa que tome como parámetro la ruta actual del archivo o directorio seleccionado, ahí si que se especificaría '%1'.
Pués no, no lo olvidé...

Si lees más abajo, verás que puse esto:
...
En cualquier caso considera que el %0 es el propio ejecutable (que queda filtrado), y todo lo que venga detrás son los parámetros ...
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Batch parametros
Scripting
magarcan 3 7,266 Último mensaje 30 Octubre 2006, 03:24 am
por sirdarckcat
16 parametros para un fichero batch
Scripting
despistado 1 2,712 Último mensaje 26 Junio 2007, 23:02 pm
por Ragnarok
Dudas: Parametros remplazables | Programación Batch
Scripting
miguel_s777 1 4,011 Último mensaje 8 Octubre 2011, 18:17 pm
por leogtz
[BATCH] CMD > ADD REG > parámetros incorrectos
Scripting
quico5 1 3,051 Último mensaje 23 Agosto 2012, 14:32 pm
por quico5
[Batch/Bash] Iniciar Con Parametros
Scripting
Gamer50 4 2,706 Último mensaje 14 Agosto 2017, 00:39 am
por Gamer50
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines