|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - нахождение суммарного объема файлов, хранящихся в каталоге |
|
CMD/BAT - нахождение суммарного объема файлов, хранящихся в каталоге
|
Новый участник Сообщения: 2 |
Добрый вечер.
есть задача Разработать и выполнить командный файл (КФ), выполняющий нахождение суммарного объема файлов, хранящихся в каталоге, имя которого задано первым параметром КФ. Нашел на форуме такую команду: @echo off for /f "tokens=3" %%a in ( 'dir/s/a-d/-c "%1\*"^|findstr/rxc:" *[0-9][0-9]* [^0-9 ][^0-9 ]* *[0-9][0-9]* [^0-9 ][^0-9 ]*"' ) do set "DirSize=%%a" echo Folder: %1 echo Size : %DirSize% Bytes pause>nul Все вроде как работает как мне надо, но помогите разобраться как работает строка: dir/s/a-d/-c "%1\*"^|findstr/rxc:" *[0-9][0-9]* [^0-9 ][^0-9 ]* *[0-9][0-9]* [^0-9 ][^0-9 ]*"' а точнее все что после %1. Заранее благодарю |
|
Отправлено: 19:10, 11-12-2014 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата p1anbeer:
Цитата p1anbeer:
В данном случае осуществляется поиск строк как регулярных выражений («/r») с точным совпадением («/x») по указанному шаблону («/c:»). Шаблон состоит из простого выражения (для иллюстрации пробелы заменены на символ «_»):
Вот примерный вывод команды «dir /s /-c»: Скрытый текст
Том в устройстве E имеет метку Works Серийный номер тома: FC23-6674 Содержимое папки E:\Песочница\0414 11.12.2014 01:45 <DIR> . 11.12.2014 01:45 <DIR> .. 09.12.2014 02:53 470 0001.cmd 09.12.2014 03:00 323 0002.cmd 11.12.2014 19:24 <DIR> 02 10.12.2014 23:13 0 03 09.12.2014 12:25 3596288 far2.x86.msi 11.12.2014 01:45 390144 setup.msi 08.12.2014 15:45 542661 Рабочая копия.rar 10.12.2014 23:45 82 Результат работы.txt 7 файлов 4529968 байт Содержимое папки E:\Песочница\0414\02 11.12.2014 19:24 <DIR> . 11.12.2014 19:24 <DIR> .. 11.12.2014 19:24 97 0001.cmd 1 файлов 97 байт Всего файлов: 8 файлов 4530065 байт 5 папок 81670144 байт свободно После передачи этого вывода по конвейеру на вход команды «findstr.exe» с указанным шаблоном, на выходе останутся только строки: Эти строки последовательно перебираются по «for /f», извлекая третий по счёту токен («tokens=3»). На последнем проходе (при разборе последней строки) будет получено искомое значение. |
||
Последний раз редактировалось Iska, 11-12-2014 в 20:01. Отправлено: 19:54, 11-12-2014 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 2
|
Профиль | Отправить PM | Цитировать Цитата Iska:
благодарю за помощь вроде как разобрался что и как работает. очень помогли. |
|
Отправлено: 20:37, 11-12-2014 | #3 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Переименование файлов в каталоге | flower | Скриптовые языки администрирования Windows | 2 | 28-11-2013 15:00 | |
VBS/WSH/JS - Мониторинг файлов в каталоге | ugol_divana | Скриптовые языки администрирования Windows | 1 | 03-08-2013 17:15 | |
CMD/BAT - [решено] Определение суммарного объема файлов определенного типа | kelevara | Скриптовые языки администрирования Windows | 16 | 02-05-2013 20:55 | |
Любой язык - [решено] Распределение файлов в каталоге | Тишина | Скриптовые языки администрирования Windows | 2 | 26-04-2013 17:09 | |
CMD/BAT - Нахождение суммарного объема файлов | XFNeo | Скриптовые языки администрирования Windows | 5 | 11-12-2011 15:56 |
|