DOS Batch файл для поиска "новых" файлов по дате

40796
Todd McArthur

Мой компьютер вошел в бесконечный цикл BSOD - но у меня есть доступ к командной строке безопасного режима.

Я пытаюсь понять, что изменилось, что могло бы спровоцировать это. например, я мог заразиться вирусом, или обновление приложения пошло не так.

Я хотел бы, таким образом, увидеть, какие файлы были созданы / изменены за последние несколько дней / неделю или, по крайней мере, * .exe, * .dll, * .com, * .bat и т. Д.

Я думал, что у меня все в порядке с Batch-fu, но я озадачен тем, как написать быстрый пакетный файл / команду, которая бы перечисляла файлы для меня.

REM This will find the files, but the results are all muddled REM all EXE files, reverse sort by date, recursively through sub-directories  dir *.exe /O-D /S 

Что мне действительно нужно, так это найти все (исполняемые типы файлов), которые были созданы / изменены за последние 3-7 дней.

Может кто-то указать мне верное направление?

8
Совершенно отдельно от команды, которая запускается, звучит так, как будто кто-то испортил настройки, а не дополнительный исполняемый файл (что и нашел бы ваш скрипт). soandos 13 лет назад 0
@ Soandos - вполне возможно, я собираюсь догадаться, что что-то, что я установил или обновил ... это то, что вызвало изменение настроек. В любом случае, я думаю, что быстрый пакетный файл для описанного выше сценария все еще будет очень удобным инструментом. Todd McArthur 13 лет назад 0
@ Тодд, ты пробовал загружаться из последней удачной конфигурации? http://windows.microsoft.com/en-US/windows7/Using-Last-Known-Good-Configuration (та же концепция применима к WinXP / 2003) Robert Kerr 13 лет назад 0
Почему бы вам не проанализировать дамп памяти из BSOD? ZippyV 13 лет назад 0
@ZippyV - Полагаю, что смогу, но понятия не имею, как это сделать. Todd McArthur 13 лет назад 0
Я пытался сделать `edit c: \ Windows \ MEMORY.DMP`, но он сказал, что это было (и я цитирую)" Out to far Memory " Todd McArthur 13 лет назад 0
@ Тодд Макартур http://www.theexperienceblog.com/technical-articles/troublesho-and-analyzing-blue-screens-of-death/ ZippyV 13 лет назад 0
-1 «бесконечный цикл BSOD» <- как будто это технический термин. «но у меня есть доступ к командной строке безопасного режима». не в BSOD, хотя. То есть вы имеете в виду, что ваш компьютер продолжает работать с BSOD каждый раз, когда он запускается / перезагружается. то есть это не случайная проблема. У вас есть глупый способ выразить это. barlop 12 лет назад 0

1 ответ на вопрос

10
Keltari

это простой, хотя и окольный путь, с использованием xcopy. Вы можете посмотреть, xcopy /?чтобы увидеть переключатели и т. д.

xcopy \windows\*.exe /L /S /D:12-01-2000 . 

Эта команда будет рекурсивно выводить список .EXEфайлов и путей в \windowsпапке, которые были изменены 12/1/2000 или после этой даты, без их фактического копирования. ПРИМЕЧАНИЕ. В конце команды есть точка. Его трудно увидеть маленьким шрифтом.

Редактировать 1: я вынул /Fиз оригинальной команды, поскольку это было посторонним.

Редактировать 2: Вы можете направить вывод в " | more", если вы хотите

как раз перед тем, как я прыгну на это ... какая часть говорит "не копировать"? ... это ``. например, копировать в исходное положение файлов? Todd McArthur 13 лет назад 2
/ L просто списки, а не копии Keltari 13 лет назад 2
@ Тодд Макартур делает xcopy /? человек barlop 13 лет назад 0
@ barlop - да, я не понимал, что строчные буквы l были l против # 1. Кроме того, поскольку xcopy обычно используется для копирования - последнее, что я хотел сделать, - это скопировать копии моих файлов на мой диск ;-) Todd McArthur 13 лет назад 0
xcopy - великолепный, но недостаточно используемый инструмент для Windows. xxcopy, сторонняя программа еще лучше. http://www.xxcopy.com/xcpymain.htm Keltari 13 лет назад 1
+1! Очень полезно, я подумал, что должен разобрать команду `DIR`, но это прекрасно! Canadian Luke 12 лет назад 0
Элегантный. Благодарю. Я передал результаты в файл с `> results.txt`. Обратите внимание: если вы запустите команду в папке, из которой вы `xcopy`, то вам нужно будет заменить последний` .` на фиктивную цель, или вы получите предупреждение о циклическом копировании. CAD bloke 9 лет назад 1