¿Cómo buscar en todo el disco duro los archivos modificados en una fecha en particular? [duplicar]


9

Esta pregunta ya tiene una respuesta aquí:

Tomé un virus hace unas horas y he identificado uno de sus archivos. Sé el minuto exacto en que se instaló el virus, y me gustaría buscar en mi disco duro completo los archivos modificados en ese minuto. ¿Hay alguna utilidad que pueda hacer esto? La búsqueda de Windows solo busca documentos.

Estoy usando Windows 8.


2
Podría usar un antivirus ...
BenjiWiebe

Estoy usando Windows Defender (Security Essentials en Windows 8) + Malwarebytes. MalwareBytes solo identificó un archivo, y ninguno tiene una opción para buscar.
msbg

Tal vez eso es todo lo que hay que está infectado. Que es posible que el virus era un archivo que no se había hecho nada todavía. Tal vez estaba esperando órdenes de un hacker. ;)
BenjiWiebe

1
Es cierto, pero prefiero estar seguro. Bien podría haber otro archivo listo para reinstalar el virus en unas pocas semanas.
msbg

1
Un programa como el que describí también podría ser útil en otras circunstancias
mensaje

Respuestas:


9

Abra el Explorador de archivos desde el escritorio. Navegue a la raíz de su disco duro (C: \ probablemente). Toque / haga clic en el campo de búsqueda y escriba lo siguiente: System.DateModified:YYYY-MM-DDThh:mm:ssdonde la fecha y la hora son las que sabe que apareció el virus y se describen en ISO-8601, que se muestra aquí: http://www.w3.org/TR/NOTE- fecha y hora

Los términos de búsqueda de Windows se denominan "Sintaxis de consulta avanzada" y contienen varios términos útiles, la mayoría de los cuales no están expuestos a los usuarios finales a través de la interfaz de usuario de búsqueda de Windows. Este es un ejemplo, explicado en este documento de MSDN: http://msdn.microsoft.com/en-us/library/bb266512%28VS.85%29.aspx en la sección "Propiedades de fecha y hora en Windows 8".

Tenga en cuenta que puede que tenga que expandir el índice para buscar en toda la unidad y también que el índice no buscará en ciertos lugares ( C:\Windows\CSC\por ejemplo).


Bien, pero no veo ninguna opción para buscar por minuto / hora.
msbg

Revisado para explicar cómo buscar hasta ese nivel.
KA

Gran respuesta. (Iba a sugerir PowerShell, pero esto es más fácil).
Guy Thomas

@KA, ¿puedes decirme por qué ninguno de estos funciona? System.DateModified:>2016-01-04T05:00y System.DateModified:<2016-01-04T05:00. Se supone que debe ser January 4, 2016 at 5 AM. Agregué un >porque pienso cómo después de la fecha y la hora enumeradas.
cokedude

2

Hay muchas formas de hacerlo. Podrías probar un programa como

http://www.mythicsoft.com/page.aspx?type=filelocatorlite&page=home

No uso 8 o incluso 7. PERO usaría CMD. Hay un par de formas de hacerlo, pero la forma más simple sería hacer DIR en toda la unidad con subcarpetas filtradas por el tiempo creado y luego buscar una cadena que coincida con el formato de fecha y hora. Para pegar en una ventana CMD, simplemente haga clic derecho y elija pegar. (de nuevo, nunca usé win8)

No es tan complicado que el siguiente código buscaría en la unidad C: un archivo creado el "19/01/2013 06:38 PM", la salida sería C: \ FoundFiles.TXT.

@dir c:\*.* /s /t:c | findstr "01/19/2013  06:38 PM">c:\FoundFiles.TXT 

El siguiente código buscará archivos ocultos y la salida a c: \ FoundHiddenFiles.TXT

@dir c:\*.* /s /a:h /t:c | findstr "01/19/2013  06:38 PM">c:\FoundHiddenFiles.TXT

use / t: a para los archivos "último acceso" y / t: w para los archivos escritos por última vez

Para abrir CMD en Windows 8 solo busque aplicaciones para CMD. Puede que tenga que ajustar la cadena para que coincida con su salida DIR colocada en la ventana 8. Además, no tengo idea si Windows 8 le da acceso a la C :. Cada búsqueda solo tomará un minuto, solo le dará los nombres de los archivos, no la ubicación, y cada vez que lo ejecute, borrará el resultado de la búsqueda anterior. el " . " debe ser opcional, solo colóquelos por si acaso.

Espero que ayude a alguien.

Una última cosa. Puede dirigir todo el disco a un archivo de texto y luego buscarlo con Word o Bloc de notas o lo que sea que le brinden con Windows 8. Los códigos a continuación mostrarán todo el contenido de sus discos duros ordenados para cuando se crearon los archivos.

dir c:\*.* /s /o:d /t:c >C:\AllFiles.TXT

Y si desea buscar todos los archivos ocultos, use

dir c:\*.* /s /o:d /t:c /a:h >C:\AllHiddenFiles.TXT

1

Vine aquí en busca del mismo problema.

en Windows 8.1, la fecha en formato ISO 8601 (AAAA-MM-DDThh: mm: ss) no funcionó si agregué Thh: mm: ss a la fecha. La fecha sin tiempo estuvo bien. '2014- 1- 15'

Pero esto funcionó con el tiempo: 15- enero-14 16:24 Es posible que necesite usar su formato regional, por ejemplo, 15/01/14 4:24 pm o universal: 2014- 1- 15 16:24

En lugar de buscar la hora de modificación, le sugiero que busque archivos CREADOS en esa fecha y hora. Como los archivos han creado / modificado / fechas de acceso: System.DateCreated:15-‎Jan-‎14 16:24

También funciona sin "Sistema". para mi:DateCreated:‎15-‎Jan-‎14 16:24

Además, en nuestro caso, es una buena idea ampliar su búsqueda, como un período de 10 minutos:

DateCreated:‎15-‎Jan-‎14 16:24..15-Jan-14 16:34

o con fecha en formato independiente del idioma:

DateCreated:‎2014-‎1-‎15 16:24..2014-‎1-‎15 16:34

está ingresando esta cadena en la ventana del Explorador de archivos en el directorio raíz de su unidad principal (c :) en un cuadro combinado Buscar esta PC a la derecha del cuadro de texto de la dirección.

También debe incluir los archivos del sistema en la búsqueda porque creo que la carpeta AppData está fuera del espacio indexado y de lo contrario no se buscará. Y ahí es donde a los virus les gusta residir. Para hacer esto, haga clic en Buscar en el menú, luego en Opciones avanzadas y archivos del sistema.

En el panel de resultados, verá las fechas de MODIFICACIÓN, algunas fuera del rango que especificó. Si observa la propiedad de cada archivo, verá que la fecha de creación está en el rango especificado. Han sido modificados después de haber sido creados.

(Hice una foto pero no puedo publicarla)


1

Hay un comando de DOS llamado forfiles que puede usar

forfiles /P C:\ /S /D -1 /M *.*

también puede usar una sintaxis más avanzada como llamar a un programa (o llamar a un comando de DOS con cmd / c ...)

forfiles /P C:\ /S /D -1 /M *.* /C "cmd /c echo @fname @fdate"

ver archivos /? para sintaxis y parámetros como @fname, @fdate, etc.

para abrir el símbolo del sistema, vaya al menú Inicio / Buscar ... y escriba CMD y presione la tecla ENTER para abrir la ventana de DOS

(PD: No puedo hacer que funcione en mi sistema; parece que devuelve todos los archivos, no solo los que se cambiaron un día antes, como especifico con / D -1, probablemente porque tiene un error con las fechas griegas como DD / MM / AAAA y no MM / DD / AAAA)

CORRECCIÓN: parece haber un malentendido (por mí y otros, a juzgar por una búsqueda en la red) sobre lo que hace / D -dd, parece que no busca archivos que tengan dd días de antigüedad, pero sean más antiguos que dd días

entonces necesita usar la sintaxis / D + dd / MM / aaaa de FORFILES y pasar la fecha de ayer allí para encontrar todos los archivos con una fecha mayor que ayer. Para automatizar esto, puede usar% date% y analizarlo con% date: ~ 7,2% /% date: ~ 4,2% /% date: ~ -4% o algo así (puede que necesite reordenar las partes de fecha allí dependiendo de su localidad)


Tenga en cuenta que en los archivos por lotes debe usar %%, no solo%
George Birbilis

por cierto, para encontrar archivos modificados hoy en día uno puede usar / D +0 como parece y para encontrar archivos más antiguos que hoy puede usar / D -0
George Birbilis
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.