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

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  COmo podria'??....... [batch]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: COmo podria'??....... [batch]  (Leído 3,769 veces)
_CrisiS_

Desconectado Desconectado

Mensajes: 286


Ver Perfil
COmo podria'??....... [batch]
« en: 26 Octubre 2009, 02:00 am »

se puede hacer que un bat se active cada ves que se elimine un archivo de cualquier disco duro?.

P.D> no lo ago con fines malvados, todo lo contrario :P


En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: COmo podria'??....... [batch]
« Respuesta #1 en: 26 Octubre 2009, 03:01 am »

Que se active?

No, para eso tendrías que tener algo más verificando que dicho archivo sea creado .. o eso o directamente creas un bat que verifique si existe, si no existe, entonces haces "algo"

Saludos


En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
<ИΘZIЭ(ŦB>

Desconectado Desconectado

Mensajes: 109


-cyman-


Ver Perfil
Re: COmo podria'??....... [batch]
« Respuesta #2 en: 8 Noviembre 2009, 21:36 pm »

Que tal Crisis! Aprovecho que te veo conectado para decirte que sí hay una forma de hacer lo que pides. Hace unos días leí tu pregunta y me dediqué a hallar la manera. Ya logré algo, pero hay unos detalles que estoy terminando. Si te quedas un rato tal vez lo veas; estoy por terminarlo. Espera...
En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: COmo podria'??....... [batch]
« Respuesta #3 en: 9 Noviembre 2009, 01:55 am »

Claro que hay manera, pero por eso digo, .. la manera es tener un programa/script corriendo que haga la verificación  :P

Saludos
En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
<ИΘZIЭ(ŦB>

Desconectado Desconectado

Mensajes: 109


-cyman-


Ver Perfil
Re: COmo podria'??....... [batch]
« Respuesta #4 en: 9 Noviembre 2009, 03:34 am »

Listo. Después de varias pruebas, este es el que mejor me corrió, aunque debo mencionar que no es 100% efectivo. Una que otra vez pasa por alto algún borrado, pero creo que es inevitable, pues se toma ciertos segundos para verificar, y en eso si casualmente se borra un archivo, puede que no lo registre.
De todos modos quedó bueno.

Lo primero que hace es pedir que se configure la ruta a chequear, la cual queda guardada en Settings.ini, en la misma carpeta, lo que impide que se vuelva a configurar en próximas ejecuciones. En caso de querer cambiarla posteriormente se puede borrar el archivo o modificar la ruta en el mismo (CheckPath).

A partir de entonces el programa queda verificando el contenido de la ruta, y guarda el registro del mismo en Content.log, también en la misma carpeta. Esta solo se actualiza cuando se borra o agrega un archivo en la ruta chequeada. Ahora bien, el programa guarda otro registro en la carpeta %temp% que si se actualiza todo el tiempo. Esa fue la única forma en que logré que la verifiación fuese más efectiva.

Por último, el programa va mostrando en pantalla cada archivo que se borra y a su vez lo guarda un registro llamado DelReg.log, que almacena la fecha y la hora del borrado, junto al nombre del archivo.

Aquí se los dejo. Lo llamé Delete Checker v1.0:

Código
  1. @echo off
  2. cls
  3. title Delete Checker [v1.0] By ^<N0ZI3(FB^>
  4. echo. & echo  Iniciando... & sleep 1
  5. If not exist "%~dp0Settings.ini" (call:Define) else (call:Read)
  6. cls
  7. call:CheckMsj
  8. dir /a /b /s "%checkPath%" >"%~dp0Content.log"
  9. call:List
  10.  
  11. :List
  12. set match=0
  13. For /f "useback tokens=*" %%R in ("%~dp0Content.log") do (
  14.     set "regValue=%%R"
  15.     If not exist "%%R" call:DelMsj
  16. )
  17. If %match% == 1 (
  18.     call:CheckMsj
  19.     set match=0
  20.     dir /a /b /s "%checkPath%" >"%~dp0Content.log"
  21. )
  22. dir /a /b /s "%checkPath%" >"%temp%\Content.log"
  23. call:Compare
  24. goto List
  25.  
  26. :Compare
  27. fc /c "%temp%\Content.log" "%~dp0Content.log" >nul
  28. If %errorlevel% == 0 (goto:eof) else (move /y "%temp%\Content.log" "%~dp0Content.log" >nul)
  29. goto:eof
  30.  
  31. :CheckMsj
  32. echo. & echo  Chequeando (%checkPath%)... & echo.
  33. goto:eof
  34.  
  35. :DelMsj
  36. If "%time:~0,1%" == " " (set "hora=0%time:~1%") else (set "hora=%time%")
  37. echo   ELIMINADO (%hora%): %regValue%
  38. (echo ELIMINADO ^(%date% %hora%^): %regValue%)>>"%~dp0DelReg.log"
  39. set match=1
  40. goto:eof
  41.  
  42. :Read
  43. For /f "useback tokens=*" %%R in ("%~dp0Settings.ini") do (set "settValue=%%R")
  44. set "checkPath=%settValue:~10%"
  45. If not exist "%checkPath%" (
  46.     echo. & echo La ruta pre-configurada ya no existe.
  47.     call:Define m
  48. )
  49. goto:eof
  50.  
  51. :Define
  52. set sender=%1
  53. If not defined sender echo. & echo  Debe configurar el sistema en su primer uso. & echo.
  54. set /p _Path=Indique el disco o directorio a procesar:
  55. If not exist %_Path% call:Define r
  56. For %%s in (%_Path%) do (
  57.     set "checkPath=%%~dpns"
  58. )
  59. (echo CheckPath=%checkPath%)>"%~dp0Settings.ini"
  60. goto:eof
  61.  

Espero saber si te resulta útil Crisis, y a cualquiera que lo use.
« Última modificación: 12 Noviembre 2009, 01:16 am por -=cym@n=- » En línea

hkire

Desconectado Desconectado

Mensajes: 51



Ver Perfil
Re: COmo podria'??....... [batch]
« Respuesta #5 en: 9 Noviembre 2009, 16:41 pm »

Muy buen aporte cyman, gracias.

Habra forma de que se abre en segundo plano/minimizado?
De ultima uso algun soft como el minime y fue.

Saludos.
PD: apenas me libero del facu/laburo sale aprender batch, viendo lo que uno puede hacer con el... :P
En línea

<Sonium> someone speak python here?
<lucky> HHHHHSSSSSHSSS
<lucky> SSSSS
<Sonium> the programming language
<ИΘZIЭ(ŦB>

Desconectado Desconectado

Mensajes: 109


-cyman-


Ver Perfil
Re: COmo podria'??....... [batch]
« Respuesta #6 en: 9 Noviembre 2009, 22:55 pm »

La verdad creo que no hay manera de lograr eso; al menos yo no la sé. Lo que hago cuando quiero que se ejecute así es convertirla en .exe con un software llamado Quick Batch File Compiler. Este permite crear la aplicación en modo "ghost" (fantasma), o sea que no queda visible. Solo puedes verlo en el administrador de tareas.

Saludos.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Batch y Drive Snapshot Como podria capturar un codigo de error?
Scripting
Shadow 4 4,760 Último mensaje 3 Mayo 2011, 15:42 pm
por SuperDraco
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines