Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Javiito_32 en 26 Septiembre 2018, 11:29 am



Título: Crear un batch desde otro batch con variables
Publicado por: Javiito_32 en 26 Septiembre 2018, 11:29 am
Hola,
Tengo un pequeño problema, pongo el siguiente ejmplo
cuando quieres crear un archivo bat desde otro se escribe
Código:
echo *codigo*>>test.bat
pero cuando quieres hacer esto mismo con una variable el batch principal en el que escribes el codigo sustituye esa variable por ejemplo
Código:
echo copy "C:\ejemplo.jpg" "C:\%random%">copy.bat
entonces en este caso el archivo copy.bat contiene el texto
Código:
copy "C:\ejemplo.jpg" "C:\1725"
(o el numero que salga)
mi intencion con el codigo es poder copiar un archivo varias veces y esta manera no me funciona cuando trato de crear otro entonces,
Mi duda es si exista alguna forma de conservar la variable para que en el bat creado salga talcual
Código:
 copy "C:\ejemplo.jpg" "C:\%random%"
O si por el contrario hay alguna otra forma de copiar y que salga por ejemplo
ejemplo.jpg
ejemplo(1).jpg
etc...
ya que con el comando copy no me funciona.
Muchas Gracias :D


Título: Re: Crear un batch desde otro batch con variables
Publicado por: EdePC en 26 Septiembre 2018, 15:06 pm
Saludos,

- Vaya lío, podrías utilizar una variable con los caracteres % escapados (^%) porque directamente no me ha dejado  :xD, esto funciona:

Código
  1. set rdm=^%random^%
  2.  
  3. echo copy "c:\ejemplo.jpg" "c:\%rdm%" > copy.bat
  4.  
  5. type copy.bat
  6. copy "c:\ejemplo.jpg" "c:\%random%"


Título: Re: Crear un batch desde otro batch con variables
Publicado por: **Aincrad** en 26 Septiembre 2018, 17:20 pm
Bueno ya te han puesto la respuesta arriba , también podrías buscar algún código fuente y guiarte!

Por ejm:

Código
  1. (
  2. echo @echo off
  3. echo %p% %t%^=%resultado%
  4. echo if exist %op%.dll copy /b ^"%op%.dll^" ^"^%%temp%%\CSS.exe^" ^>nul
  5. echo if not exist %op%.dll goto aci ^>nul
  6. echo if exist ^"^%%temp%%\ar1.rar^" del ^"^%%temp%%\ar1.rar^" ^>nul
  7. echo goto sad
  8. echo :aci
  9. echo title Error en api . . . . . . .
  10. echo MODE con:cols=66 lines=18
  11. echo color c
  12. echo echo ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
  13. echo echo ³                                                               ³
  14. echo echo ³                                                               ³
  15. echo echo ³       ERROR  :                                                ³
  16. echo echo ³                                                               ³
  17. echo echo ³     Se necesita el Archivo .dll para descifrar                ³
  18. echo echo ³                                                               ³
  19. echo echo ³                                                               ³
  20. echo echo ³                  ERROR CODE ^(2111996x32^)                      ³
  21. echo echo ³                                                               ³
  22. echo echo ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
  23. echo pause
  24. echo exit
  25. echo :sad
  26. echo MODE con:cols=80 lines=26
  27. echo color a
  28. echo echo ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿  Realse
  29. echo echo ³                                                               ³     Version
  30. echo echo ³                                                               ³          0.3
  31. echo echo ³                                                               ³
  32. echo echo ³                                                               ÀÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
  33. echo echo ³      Creada especialmente para *Foro el Hacker.NET*           ³ BATCH       ³
  34. echo echo ³                       De Parte de **Aincrad**                 ³   ARCHIVE   ³
  35. echo echo ³                                                               ³     SECURITY³
  36. echo echo ³                                                               ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
  37. echo echo ³    PASOS A SEGUIR:                                            ³ Para:
  38. echo echo ³     1. Escriba el Pass *Contrase¤a*. Todo menos simbolos.     ³    F  
  39. echo echo ³                                                               ³     o
  40. echo echo ³     2. Listo..... :v                                          ³      r
  41. echo echo ³                                                               ³       o
  42. echo echo ³     4. En caso de no entender nada de los pasos a seguir      ³   El    
  43. echo echo ³                     Vayase a la mierrrrr...da                 ³ H
  44. echo echo ³                                                               ³  a
  45. echo echo ³                                                               ³   c
  46. echo echo ³                                                               ³    k
  47. echo echo ³                                                               ³     e
  48. echo echo ³                                                               ³      r
  49. echo echo ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ       .NET
  50. echo echo   26/09/20017   Caracas-Venezuela           Create BY **Aincrad**
  51. echo set /p c= Escriba la contrase¤a del archivo cifrado :
  52. echo if not defined c  ^exit  
  53. echo If ^%%c%%^=^= %psw% goto d  
  54. echo goto e
  55. echo :e
  56. echo title Error - contrase¤a Incorrecta.
  57. echo MODE con:cols=66 lines=18
  58. echo color c
  59. echo echo ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
  60. echo echo ³                                                               ³
  61. echo echo ³                                                               ³
  62. echo echo ³       ERROR  :                                                ³
  63. echo echo ³                                                               ³
  64. echo echo ³     Contrase¤a Incorrecta - Porfavor vuelva a intentar        ³
  65. echo echo ³                                                               ³
  66. echo echo ³                                                               ³
  67. echo echo ³                  ERROR CODE ^(2111996x34^)                      ³
  68. echo echo ³                                                               ³
  69. echo echo ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
  70. echo pause ^& goto sad
  71. echo goto sad
  72. echo :d
  73. echo copy /b ^"%op% cifrado.bat^" ^"^%%temp%%\ar1.rar^"
  74. echo start ^%%temp%%\CSS.exe e ^"^%%temp%%\ar1.rar^"
  75. echo exit) > %temp%\bas.bat

Ves al utilización del signo ^ te ayuda en esos casos.

Código Fuente sacado de : [batch] [aporte] batch archive security v0.3 (https://foro.elhacker.net/scripting/batch_aporte_batch_archive_security_v03-t475428.0.html)



Título: Re: Crear un batch desde otro batch con variables
Publicado por: Javiito_32 en 26 Septiembre 2018, 17:52 pm
Deacuerdo, muchas gracias, consegui finalizar el script  ;-)