Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Нахождение суммарного объема файлов (http://forum.oszone.net/showthread.php?t=198385)

XFNeo 02-02-2011 15:59 1602882

Нахождение суммарного объема файлов
 
Добрый день!
Помогите плиз решить задачу)
"Разработать и выполнить командный файл (КФ), выполняющий нахождение суммарного объема файлов, хранящихся в каталоге, имя которого задано первым параметром КФ."
Заранее благодарен!

Petya V4sechkin 02-02-2011 16:03 1602884


amel27 02-02-2011 16:27 1602905

вариация на избитую тему:
Код:

@echo off

set DirPath=C:\TEST
for /f "tokens=3" %%a in (
'dir/s/a-d/-c "%DirPath%\*"^|findstr/rxc:"  *[0-9][0-9]* [^0-9 ][^0-9 ]*  *[0-9][0-9]* [^0-9 ][^0-9 ]*"'
) do set "DirSize=%%a"

echo Folder: %DirPath%
echo Size  : %DirSize% Bytes
pause>nul

P.S. проверено только на русской XP

XFNeo 03-02-2011 13:16 1603499

Помогите плиз, еще необходимо расставить коменты к каждой строчке(комманде)
вот в этом коде


Код:

@Echo Off 
SetLocal enabledelayedexpansion 
Set DirProg=c:\1   

For /F "skip=4 tokens=1-3" %%a IN ('Dir "%DirProg%" /-C /S /A:-D') Do (         
If !flag!==1 Set dirsize=%%c         
If "%%b"=="файлов:" (Set flag=1) Else (Set flag=0)  ) 

Echo Размер всех файлов = !dirsize! 

Pause>nul


Hardip 10-12-2011 20:14 1812827

Еще есть вот такой вариант решения

Код:

@echo off  for /f "tokens=*" %%i in ('dir "%1"')
do (set /a q+=1)    for /f "tokens=3,4" %%i in ('dir "%1" ^| more +%q%')
do (echo %%i %%j &pause&exit)

Вот только не пойму почему данная команда 2 раза выдает объем файлов, дважды требуя нажатия любой клавиши? В первом случае верный, а во втором общий объем на диске помоему.

Hardip 11-12-2011 15:56 1813250

И вот пока делал появился ещё вопрос, а как дописать, чтобы выполнялось нахождение суммарного объема файлов, хранящихся в каталоге, но с определенным расширением, задаваемым при запуске?


Время: 19:28.

Время: 19:28.
© OSzone.net 2001-