Autor
|
Tema: [BATCH] Duda Shift, Y ¿Como saber cuantos argumentos necesito? [Solucionado] (Leído 9,002 veces)
|
SuperDraco
Desconectado
Mensajes: 2.505
Crew Dragon
|
Hola, ¿se os ocurre alguna forma de como saber el número de archivos que se arrastran hacia un .bat? Por ejemplo, si arrastro un archivo a un .bat, este será el argumento "%1" Pero y si arrastro 20 archivos por ejemplo? como puedo hacerle saber a mi bat que son 20 los argumentos que necesita manejar? Para cada archivo que arrastre, necesito crear una variable con el nombre del archivo, por ese motivo necesito saber cuantos archivos se han arrastrado, puede que no me esté explicando bien, así que aqui dejo un ejemplo que llevo hecho: etc...
Pero claro, sin conocer cuantos archivos se han arrastrado al .bat... pues el uso del SHIFT podría ser infinito... Por cierto tengo otra pregunta, en el code de arriba, se puede simplificar lo que he echo con SHIFT? Lo que hago en el código es borrar los 8 argumentos, pero se puede hacer en un solo código en vez de usar 8 líneas? es que si uso " Shift /8" creo que no hace lo mismo, no me funciona como quiero xD Un saludo!
|
|
« Última modificación: 21 Julio 2011, 08:48 am por Leo Gutiérrez. »
|
En línea
|
No he vuelto, solo estoy de paso.
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
Mmmm, has probado ir borrando argumentos consecutivamente (con un for), claro que antes deberías guardar los elementos que no tengan una longitud de cero, almacenalos en un array.
|
|
|
En línea
|
|
|
|
SuperDraco
Desconectado
Mensajes: 2.505
Crew Dragon
|
Necesitaria un script "boceto" para ver como se haría eso xDDD
Lo de los argumentos que tengan longitud 0 ok.
Pero como haría el for sobre los argumentos?
|
|
|
En línea
|
No he vuelto, solo estoy de paso.
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
Mira, no he utilizado for, pero el siguiente código te ayuda a saber cuántos argumentos se le envían al script. C:\Users\leo>code Posible numero de argumentos : 0 C:\Users\leo>code bla Posible numero de argumentos : 1 C:\Users\leo>code hola mundo cruel batch Posible numero de argumentos : 4 C:\Users\leo>code a b c d e f g h j h h h h h h h h h e er r r df d df f f d d f f d f Posible numero de argumentos : 32 C:\Users\leo>
% Contador de argumentos % % argc % :loop ) :next echo Posible numero de argumentos : %1
|
|
|
En línea
|
|
|
|
SuperDraco
Desconectado
Mensajes: 2.505
Crew Dragon
|
justo lo que necesitaba!!!
muchas gracias!!, lo pruebo en cuanto pueda y comento si me surge alguna duda
|
|
|
En línea
|
No he vuelto, solo estoy de paso.
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
Okay, oye, una pregunta, vi que estabas tratando algo sobre enviar emails con batch, pudiste hacerlo? Mientras dejo otra solución: :loop ) :next
|
|
« Última modificación: 8 Julio 2011, 22:13 pm por Leo Gutiérrez. »
|
En línea
|
|
|
|
SuperDraco
Desconectado
Mensajes: 2.505
Crew Dragon
|
si, lo han movido a scripting http://foro.elhacker.net/scripting/zetauploadscript_by_pitoloko_manda_emails_con_un_click_sin_restricciones-t332881.0.htmlPero me gustaría mejorar el manejo de argumentos en el script porque sino me va a quedar un engorro dañiño para la vista y solo permite hasta 20 archivos al mismo tiempo, o 20 directorios. Pero bueno solo es un script, el verdadero trabajo es de los que han hecho ese uploader. Pero tu que sabes tanto de scripting, imaginate las cosas que puedes hacer ,por ejemplo le puedes cambiar la variable %Destino% a mi script, para enviar emails automaticamente a una lista de contactos (Separados por punto y coma ; ) el programa lo permite, me gusta mucho, por desgracia con los archivos no permite separarlos con punto y coma, y ahora me toca sufrir por eso
Creo que el primer batch que has puesto me va a servir, aunque al final tengo que pasar en el LOOP todos los argumentos a un archivo de texto, porque sino tu batch usa SHIFT y me los borra todos, a ver si lo consigo xD
|
|
|
En línea
|
No he vuelto, solo estoy de paso.
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
Pero bueno, suponiendo que hago un pequeño script que me envie a mi email unos datos, qué necesitaría tener en la maquina de donde sale el email?
|
|
|
En línea
|
|
|
|
SuperDraco
Desconectado
Mensajes: 2.505
Crew Dragon
|
este programa https://www.zeta-uploader.com/es/downloadnada más! solo necesitas usar el zulc.exe bueno aunque he intentado quitar la mayoría de librerias y parece que todo lo del paquete de instalación es necesario (Menos las carpetas de idiomas, y y el zetauploader.exe) parece que el resto de dependencias las usan tanto la version normal como la commandline. saludosss
|
|
|
En línea
|
No he vuelto, solo estoy de paso.
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
¿Hay que instalarlo?
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Cómo saber qué argumentos son dados
PHP
|
jmordenata
|
2
|
2,197
|
29 Abril 2007, 16:12 pm
por jmordenata
|
|
|
[Solucionado] [VBS] Duda sobre los argumentos
« 1 2 »
Scripting
|
SuperDraco
|
14
|
11,494
|
2 Abril 2011, 04:50 am
por SuperDraco
|
|
|
[Solucionado] [ Batch ] Problema con argumentos :/
Scripting
|
SuperDraco
|
7
|
5,598
|
3 Abril 2011, 02:27 am
por leogtz
|
|
|
(SOLUCIONADO) Duda sobre clave y argumentos en el regedit
Scripting
|
SuperDraco
|
3
|
4,453
|
8 Julio 2011, 18:09 pm
por SuperDraco
|
|
|
[ Batch] (Solucionado) Problema sobre argumentos %1
Scripting
|
Eleкtro
|
5
|
4,546
|
6 Noviembre 2011, 19:40 pm
por leogtz
|
|