Войти

Показать полную графическую версию : поиск в заданном каталоге файла наибольшего размера с указанным расширением


oxid63
19-11-2015, 14:11
Разработать командный файл для интерпретатора командной строки CMD OC Windows, предусматривающий ввод в командной строке наименования каталога, а также ввод расширения файла.
Дальнейшие команды должны обеспечить поиск в заданном каталоге файла наибольшего размера с указанным расширением.
Командный файл должен выводить на экран имя найденного файла и его размер.


Ребята помогите пожалуйста нубчику

Elven
19-11-2015, 15:17
Сильно похоже на школьную задачку. Не хочется как-то оказывать медвежью услугу, посему дам только несколько советов:
введенные параметрами к запуску файла данные через пробел помещаются в переменные %1 %2 и т.д.
т.е. если при запуске указать например prgrm.cmd c:\folder jpg то мы получим при выполнении две переменные %1 со значением c:\folder и %2 со значением jpg
дальше достаточно прочитать for /? (особо уделив внимание tokens и delims) и dir /? (присмотревшись к ключам сортировки по размеру)

Iska
19-11-2015, 15:19
ввод в командной строке наименования каталога, а также ввод расширения файла. »
Читайте «set /?», для ввода пользуйте «set /p».

oxid63
19-11-2015, 15:29
Elven ребят дошел до этого а дальше не знаю чо как
@Echo Off
SetLocal EnableDelayedExpansion
If "%~1"=="" (Set _dir=.) Else (Set _dir=%~1)
If "%~2"=="" (Set _ext=*) Else (Set _ext=%~2)

Set maxsize=0
For /F "tokens=*" %%i In ('Dir /A:-D /B "%_dir%\*.%_ext%"') Do (
If %%~zi GTR !maxsize! (
Set maxsize=%%~zi
Set name=%%~ni
Echo MAX !maxsize! %%i
)
)
Echo ===============================
Echo Name: %name%
Echo Size: %maxsize%
Pause


подскажите

Elven
19-11-2015, 16:06
Вместо вот этого
If %%~zi GTR !maxsize! (
Set maxsize=%%~zi
Set name=%%~ni
Echo MAX !maxsize! %%i »
как я и рекомендовалдостаточно прочитать for /? (особо уделив внимание tokens и delims) и dir /? (присмотревшись к ключам сортировки по размеру) »

з.ы. имхо, использовать tokens для забивания в переменную строки целиком - гвозди микроскопом.




© OSzone.net 2001-2012