Autor
|
Tema: -> Programación BATCH Avanzada. (nuevo) (Leído 480,798 veces)
|
uroboros
Desconectado
Mensajes: 6
|
El tema de variables ningun problema; pero lo de argumentos no lo cojo por ningun lado; es en eso de %0, el astring, %~f1, eso del directorio donde se tiene el archivo y como luego se muestran los analisis
es más, el concepto en general es lo que no comprendo. por ejemplo en este codigo @echo off echo Con Comillas: %1 echo Sin Comillas: %~1
el %1 a q se refiere?
o que es eso re recibir? "Si lo que recibimos no es un archivo, sino una cadena de texto, que contiene mas de una palabra, se debe poner entre comillas, algo asi:"
si se me aclara el concepto, la idea general de los argumentos y de la semantica de sus codigos no tendré ningun problema, solo que el problema lo tengo al principio de todo y entonces ya no me funciona nada.
|
|
|
En línea
|
|
|
|
patovica
Desconectado
Mensajes: 1
|
LEO G. muchas gracias por la respuesta, los probe y andan perfectos, los tendia que pulir un poquito para que detecte solamene el pendrive, ahora otra pregunta mas, la ideas es arragar este programa cuando se inicie window y quede latente hasta que alguien meta un pendrive y cuando sea asi me avise mediante una alerta, esta parte ya me anda, me falta como poder hacer para que quede stand by. Muchas gracias.
|
|
|
En línea
|
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
Hola, con respecto a lo de Stand by, puedes hacer un bucle que cada determinado tiempo, muestre las unidades extraibles conectadas, algo asi : @echo off :Code ping -n 20 127.0.0.1>nul ...Codigo goto:Code
Ahora, hice este otro Script, muestra las USB´S, es parecido a los demás, solo que ahora muestra la lista asi : A: B: C: etc. @echo off :Code nircmd wait 3000 for /f "tokens=2 skip=1" %%x in ('fsutil fsinfo drives ^| more') do ( fsutil fsinfo drivetype %%x | find /i "extra" > nul 2>&1 && ( for /f "tokens=1" %%c in ('echo %%x') do ( echo %%c ) ) ) for /f "tokens=1 skip=2" %%x in ('fsutil fsinfo drives ^| more') do ( fsutil fsinfo drivetype %%x | find /i "extra" > nul 2>&1 && ( for /f "tokens=1" %%c in ('echo %%x') do ( echo %%c ) ) ) nircmd wait 1000 cls goto:Code El codigo usa a nircmd.exe, descargalo de nirsoft.net. Saludos.
|
|
|
En línea
|
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
Hola, de esta otra forma tambien se puede : @echo off for /f "tokens=3" %%x in ('echo list volume ^| diskpart ^| find /i "extra"') do ( echo %%x: ) >nul (pause) exit /b Saludos. Con WMIC tambien se pude, pero tengo problemas con el ahorita.
|
|
|
En línea
|
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
Hola, tal ves te interese este, loo hice para que detecte las unidades extraibles y su espacio : @echo off for /f "tokens=3,6,7" %%a in ('echo list volume ^| diskpart ^| find /i "extra"') do ( echo %%a: %%b : %%c ) >nul(pause) exit /b
|
|
|
En línea
|
|
|
|
patovica
Desconectado
Mensajes: 1
|
Estimado LEO Gtz., de los programas que me mandastes, andan, pero lo que no me puedo dar cuenta es como puedo trabajar con las unidades, ya que si bien las ve, el programa solo se limita a hacer un loop y mostrar lo que encuentra pero no se como puedo preguntar por una especifica, por ejemplo yo quiero que me avise si alguien puso un pendrive en mi maquina en mi caso la letra es H:, Y otro tema que tambien quiero ver y no encuentro nada para leer, es que cuando se ejecute el archivo bat. no muestre la ventana de DOS, o sea que quede corriendo como en segundo plano.
|
|
|
En línea
|
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
El codigo de abajo, constantemente esta buscando la unidad F:\, si la encuentra lanza el mensaje, si no, continua buscando. :Bucle fsutil fsinfo drives | more | find /i "%buscar%" && ( echo Unidad %buscar% encontrada. ) || ( cls )
|
|
|
En línea
|
|
|
|
Meta
|
Hola: Muy currado el tutorial. He hecho una prueba con el bat. ECHO @OFF ECHO ^<head^>^<title^>Prueba del BAT^</title^>^</head^>^<body^>Esto es una prueba^<p^>^<ahref="directorio/prueba2.html"^>Enlace 2^</a^>^</p^>^</body^>^</html^> > prueba.html MKDIR directorio CD directorio ECHO ^<head^>^<title^>PRUEBA 2^</title^>^</head^>^<p^>^<ahref="../prueba.html"^>VOLVER^</a^>^</p^>^<body^>Esto es una prueba del html dentro de la carpeta directorio.^</body^>^</html^> > prueba2.html
Como podrás comprobar funciona. Pero quiero hacer otra cosa que no se si se puede hacer o al menos vamos a intentarlo. Lo que quiero hacer un logo o una imagen cualquiera tamaño de nuestro avatar de este foro y copiar su código en el bat. Me imagino que se podrá obtener con un hexadecimal. Probamos este mismo que tiene fama www.winhex.comAhora me dirás si se puede hacer. Un cordial saludo. EDITO:PD: Aquí hay algo que deberías incluir en tu tutorial.http://www.cristalab.com/tips/49576/programacion-avanzada-de-archivos-en-lotes-.bat.htmlhttp://www.cristalab.com/tips/48410/programacion-batch-con-archivos-.bat.html
|
|
« Última modificación: 23 Diciembre 2008, 12:27 pm por Meta »
|
En línea
|
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
Algo como esto: @echo off mode con cols=100 lines=100 echo !!!i1/)))$$$$$$)))/ii! echo !i1))$$$$$$$$$$$$$$$$$$$$$$$$)11i! echo i))$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$11! echo i)$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$)! echo i$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$/iii! echo )$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$))ii))1 echo !!$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$1 1/!!1) echo )$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$!11i/ii!)$)) echo ))$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$i//i!))!$$$$i echo )$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$)))$$$!!ii!!)$$$$) echo 1$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$i i)$$))$$$$)ii echo $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$!)$$$$$$$$$//ii11/)$$$ echo ii$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$1 11$$$$$$$$$$$$$$$$!! echo $$$$$$$$$$$i! !)$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$) !$$$$$$$$$$$$$)! echo !$$$$$$$$) //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$)$$$$$$$! 11$$$$$$$$$1 echo )$$$$)ii $$$$i !!$$$$ )$$$i $$$// echo $$$$) !!ii )$$$! !!$$)) i$$$1 1$$!! echo $$$$!i$$$$)) )$$$! !!$$11 !$$$/ !$$ii echo /$$$ ))) /$$$! 1$$$! !!$$ii 11$$ /$$$ echo i$$$i!$$!1$$$i 1$$$! !!$$!! !!$$ !$$$ echo $$$$! $$$$1 !)11 )) )) 111 echo ii$$$$$$$$$$i !!TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT echo !i//))11 TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT echo. echo !))))T T))))! TTTTTTTTTTTT echo !66ddddddd)) )dddddddd6!! TTdddddddddddd!! echo )ddd! (ddd dd(( Tddd) TTdd! echo (d66 TdddT !! !! !ddTT 6dd6 TTdd! echo (ddd! !!dd !!dd! !dd(( TTdd! echo !dddd(TT !!dd !!dd! 6ddd6)!! TTdd! echo )(ddddddd( !!dd !!dd! TT(6ddddd66! TTddddddddddd( echo !)ddddT !!dd !!dd! !!T6ddd6 TTdd! echo TT ddd( !!dd !!dd! TT! )ddd! TTdd! echo !ddTT 66d6 !!dd !!dd! (d6 Tddd! TTdd! echo )ddd6T!!!T6ddd! dd( !66dd! dddd)! !)ddd( TTdd()))))))))!! echo )dddddddddddT )dddddd((dd! !dddddddddd66 TTddddddddddddTT echo !!(6ddd6)!! T6666T )) ))66dd6(T !!))))))))))))!! pause>nul exit /b 0
|
|
|
En línea
|
|
|
|
Meta
|
No me refería eso, pero ahora que lo veo, me encanta. Buen dibujo, Me refiero que cojas una imagen cualquiera. Por ejemplo imagen.jpg. Con ella guardar la foto tal como se ve aquí. que al ejecutar el bat, aparezca lo que se ve. ¿Eso es posible?
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Programacion avanzada - Inline Asm/C (Muy bueno)
Programación Visual Basic
|
Tughack
|
4
|
3,003
|
8 Agosto 2007, 02:40 am
por Freeze.
|
|
|
[G] Libro Programacion Avanzada en Ensamblador!!!
ASM
|
-Gosw-
|
3
|
8,895
|
27 Mayo 2009, 10:40 am
por -Gosw-
|
|
|
algunas dudas en programacion BATCH(nuevo en esto de programacion)
Scripting
|
stock_C
|
8
|
9,365
|
19 Junio 2009, 18:08 pm
por frank30
|
|
|
[Taller] Programacion Avanzada en C/C++ (Linux)
Programación C/C++
|
[L]ord [R]NA
|
0
|
6,592
|
4 Octubre 2010, 04:53 am
por [L]ord [R]NA
|
|
|
Unix programacion avanzada
Unix/Unix-Like
|
sesiopower
|
1
|
8,061
|
1 Marzo 2014, 20:13 pm
por Joe Fraddy
|
|