
Я создал пакетный файл, который перенаправляет в простой текстовый файл. Пакет переходит по указанному пути, там выполняется команда dir, а вывод направляется в текстовый файл.
Теперь, когда я открываю текстовый файл, я вижу все дерево, но мне нужна только одна папка, в которую я в последний раз вносил изменения.
Итак, может ли кто-нибудь подсказать, какую команду мне нужно дать, чтобы она выбрала только эту папку и напечатала ее в моем текстовом файле?
Ниже приведено содержимое моего пакетного файла:
S:
cd S:\log\logit-esb\dhl\subscriptions
dir >> D:\Abhi_Work\System_Monitoring\System_monitoring.txt
Когда я запускаю пакетный файл ниже, вывод направляется в мой текстовый файл.
Directory of S:\log\logit-esb\dhl\subscriptions
05/01/2015 04:25 PM <DIR> .
05/01/2015 04:25 PM <DIR> ..
05/01/2015 04:25 PM <DIR> processed
0 File(s) 0 bytes
3 Dir(s) 4,682,932,224 bytes free
Volume in drive S is System
Volume Serial Number is 42A7-D3B7
Мое требование — я хочу, чтобы в выходном файле отображалась только следующая строка.
05/01/2015 04:25 PM <DIR> processed
Так что кто-нибудь, помогите мне в достижении этого.
решение1
Следующая команда в вашем пакетном файле сделает то, что вам нужно:
dir | findstr "processed" >> D:\Abhi_Work\System_Monitoring\System_monitoring.txt
Сначала вам следует убедиться, System_monitoring.txt
что это пустой файл, так как >>
к нему будут добавлены ...
ИсточникПоиск строк в файлах.
Трубопроводы и перенаправление
Текстовый файл можно передать или перенаправить в FINDSTR:
Поток данных из канала TYPE file.txt | FINDSTR "searchString"
Stdin через перенаправление FINDSTR "searchString"
Различные спецификации источников данных являются взаимоисключающими — FINDSTR может работать только с одним из следующих: аргумент(ы) имени файла, параметр /F:file, перенаправленный ввод иливходной сигнал по трубе.
решение2
Это Powershell, который включен в Windows 7 и отображает последнюю измененную папку в пути.
get-childitem -path c: | sort-object LastWriteTime -descending | select -first 1 | format-table -hidetableheaders