PDA

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


-Marshall-
18-12-2010, 14:35
Помогите пожалуйста реализовать батник, который будет считывать с командной строки выбранный пользователем путь и типы файлов, которые затем удаляться. Или хотя бы считывание формата файла и его удаление. Заранее спасибо

-Marshall-
18-12-2010, 22:16
Вот готовое решение в примерах нашел, но оно не работает :(

echo on
set deldir = %1
:one
shift
if "%1"=="" goto two
del %deldir%\*.%1
goto one
:two
set deldir=

SendMessage
19-12-2010, 04:56
Вот готовое решение в примерах нашел, но оно не работает »
Все дело в банальных пробелах. Не set deldir = %1 а set deldir=%1
Кстати, а нужны ли Вам сообщения консоли, может лучше убрать?
@echo off
set deldir=%1
:one
shift
if "%1"=="" goto two
del %deldir%\*.%1
goto one
:two
set deldir=

-Marshall-
19-12-2010, 21:24
Кстати, а нужны ли Вам сообщения консоли, может лучше убрать?
Код:
@echo off
set deldir=%1
:one
shift
if "%1"=="" goto two
del %deldir%\*.%1
goto one
:two
set deldir= »

При таком коде, батник просто закрывается, ничего не спросив

SendMessage
20-12-2010, 13:04
При таком коде, батник просто закрывается, ничего не спросив »
А что он должен спрашивать? Он и при старом коде ничего не спрашивал.
Или вы не поняли как он работает? Объясню - он запускается из комстроки с параметрами. Пример:
this.bat "folder" 1ext 2ext 3ext
Первый параметр - папка, в которой удаляются файлы, остальные - типы файлов, выбранные для удаления.

-Marshall-
21-12-2010, 00:22
SendMessage, спасибо, я не знал, что команда "set" принимает параметры с командной строки.




© OSzone.net 2001-2012