Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Поиск файлов *.cer с заданной датой создания

Ответить
Настройки темы
CMD/BAT - Поиск файлов *.cer с заданной датой создания

Новый участник


Сообщения: 10
Благодарности: 0

Профиль | Отправить PM | Цитировать


Всем привет, ребят помогите пожалуйста наваять батник со следующим функционалом.

1) запускаем батник и он просит ввести с клавиатуры дату в формате дд.мм.гг

2) ищет на диске и во всех под каталогах X:\Файлы\Сертификаты\*.cer файлы с расширением *.cer, но на диске X есть под каталоги X:\Файлы\Сертификаты\OLD и X:\Файлы\OLD в них искать не нужно (не нужно искать в папках OLD)

3) выводит список всех найденных файлов *.cer с заданной датой создания

4) и еще хотелось бы что бы русский язык выводился нормально а не иероглифами, потому что сертификаты и пути к ним пишутся на русском языке.

и можно ещё их посчитать,
Например:
Было найдено:
1) X:\Файлы\Сертификаты\Женя\сертификат.cer
2) X:\Файлы\Сертификаты\Маша\ВходБаза.cer
Итого найдено: 2 сертификата.

Я думаю для знающего человека эта задача простая, я к сожалению таким не являюсь.
Спасибо за понимание и помощь)

Отправлено: 17:30, 10-08-2015

 

Ветеран


Сообщения: 874
Благодарности: 575

Профиль | Отправить PM | Цитировать


Цитата Альберт_25:
Georgio, а можешь немного подправить батничек, просто он ищет файлы в папках OLD, а мне там не нужно искать...
у меня много папок с вот такой структурой:
X:\Файлы\Сертификаты\биржа\OLD
X:\Файлы\Сертификаты\торг\OLD
X:\Файлы\Сертификаты\хрень\OLD
и т.д. »


Код: Выделить весь код
:: Пакетный файл с данным кодом сохраните в кодировке "OEM-866"!

@echo off& setlocal

set "dir=X:\"

echo Введите дату в формате "дд.мм.гг" или "дд.мм.гггг" (без кавычек).
set/p "$date="& cls& if not defined $date exit/b 1
cmd/v/c echo.!$date!| ^
findstr/x "[0-3][0-9]\.[0-1][0-9]\.[0-9][0-9] [0-3][0-9]\.[0-1][0-9]\.[0-9][0-9][0-9][0-9]"&& ^
echo.|| exit/b 2

pushd "%dir%"&& set n=0|| exit/b 3
for /f "delims=" %%i in ('2^>nul dir/a-d/b/s "*.cer"^| find/i /v "\old\"') do (
 for /f "delims=" %%j in ('dir/a/-c/tc "%%i"^| findstr/b %$date:.=.[0-9]*%') do (
  set/a n+=1
  cmd/c set/a n& echo ^) %%i
 )
)
popd& echo.& echo Итого найдено: %n% сертификат (-а, -ов).

pause>nul& endlocal& exit/b 0

Отправлено: 10:25, 13-08-2015 | #21



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 10
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Elven:
Однако если есть файлы с одинаковыми именами лежащие в разных папках, будет уже неправда.»
На что получил ответ
Цитата Альберт_25:
Таких файлов нету) » »
а если есть файлы с одинаковыми именами, как будет правильно?

Последний раз редактировалось Альберт_25, 13-08-2015 в 11:04.


Отправлено: 10:57, 13-08-2015 | #22


Ветеран


Сообщения: 874
Благодарности: 575

Профиль | Отправить PM | Цитировать


Цитата Альберт_25:
а если есть файлы с одинаковыми именами, как будем правильно? »


Основываясь на логике построения алгоритма, воплощённого в тот код, "правильно" не получится.

Отправлено: 11:27, 13-08-2015 | #23


Новый участник


Сообщения: 10
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Georgio:
Основываясь на логике построения алгоритма, воплощённого в тот код, "правильно" не получится. »
Мне не очень удобно тебя о чем либо просить, и так много хорошего сделал, но если вдруг у тебя появится время, а главное желание, смог бы ты написать код который сможет найти такие файлы?)

Отправлено: 12:12, 13-08-2015 | #24


Ветеран


Сообщения: 874
Благодарности: 575

Профиль | Отправить PM | Цитировать


Цитата Альберт_25:
смог бы ты написать код который сможет найти такие файлы? »


Уже написал. Смотри выше.
Это сообщение посчитали полезным следующие участники:

Отправлено: 12:27, 13-08-2015 | #25


Новый участник


Сообщения: 10
Благодарности: 0

Профиль | Отправить PM | Цитировать


Georgio, знаешь я её уже засовывал в Батник и запускал, она очень долго висит и ничего не происходит, я что то не так сделал?

Отправлено: 13:16, 13-08-2015 | #26



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Поиск файлов *.cer с заданной датой создания

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] батник для создания папки с текущей датой + время aggressor_ Скриптовые языки администрирования Windows 23 08-02-2018 16:02
CMD/BAT - [решено] Как заархивировать файлы с датой создания этих файлов? yaoleg2 Скриптовые языки администрирования Windows 1 01-09-2013 03:09
CMD/BAT - Мониторинг - поиск архивов с заданной датой в имени Serg2010 Скриптовые языки администрирования Windows 0 21-05-2012 21:59
Драйвер - Автоматический поиск драйвера в заданной папке в Windows XP dzekka Microsoft Windows 2000/XP 2 19-10-2010 05:09
Драйвер - [решено] Поиск подходящего драйвера в заданной папке с подпапками Speaker Microsoft Windows 2000/XP 2 01-03-2008 19:07




 
Переход