balin96
17-04-2017, 21:29
Здравствуйте, столкнулся с несколькими вопросами при написании сценария.
Сценарий запускается с параметрами - путь к каталогу и и произвольное количество параметров, задающих расширения файлов. Файлы с заданными расширениями должны быть перемещены их всех подкаталогов в новый (в род каталоге и название текущая дата). Пути к перемещенным каталогам и общее их кол-во записать во временный файл, после отображения - удаляется.
Если файлов нет, предусмотреть сообщение. Предусмотреть проверку наличия параметров при запуске сценария и существование каталога.
Написал сценарий, но вот есть несколько недочетов. Не знаю, как сделать
1)Кол-во файлов с таким расширением
2)При записи в файл после просмотра первой папки создается требуемая, но батник заходит и в эту папку тоже.
Пример запуска 1.bat C:\... txt
@echo off
if "%~1"=="" echo Путь к каталогу или новому файлу отсутствует&&exit /b
if "%~2"=="" echo Расширение отсутствует&&exit /b
if not exist "%~1" echo Каталог отсутствует&&exit /b
set sFolderName=%date%
md %sFolderName::=-%
FOR /R %1 %%i IN (*.%2) DO ( @echo %%~fi >>1234.tmp | move /y "%%i" "%sFolderName::=-%" )
IF EXIST 1234.tmp (echo. | echo Содержимое временного файла:
type 1234.tmp
del 1234.tmp) ELSE (echo. | echo Файлов с таким расширением - нет)
Помогите пожалуйста разобраться
Сценарий запускается с параметрами - путь к каталогу и и произвольное количество параметров, задающих расширения файлов. Файлы с заданными расширениями должны быть перемещены их всех подкаталогов в новый (в род каталоге и название текущая дата). Пути к перемещенным каталогам и общее их кол-во записать во временный файл, после отображения - удаляется.
Если файлов нет, предусмотреть сообщение. Предусмотреть проверку наличия параметров при запуске сценария и существование каталога.
Написал сценарий, но вот есть несколько недочетов. Не знаю, как сделать
1)Кол-во файлов с таким расширением
2)При записи в файл после просмотра первой папки создается требуемая, но батник заходит и в эту папку тоже.
Пример запуска 1.bat C:\... txt
@echo off
if "%~1"=="" echo Путь к каталогу или новому файлу отсутствует&&exit /b
if "%~2"=="" echo Расширение отсутствует&&exit /b
if not exist "%~1" echo Каталог отсутствует&&exit /b
set sFolderName=%date%
md %sFolderName::=-%
FOR /R %1 %%i IN (*.%2) DO ( @echo %%~fi >>1234.tmp | move /y "%%i" "%sFolderName::=-%" )
IF EXIST 1234.tmp (echo. | echo Содержимое временного файла:
type 1234.tmp
del 1234.tmp) ELSE (echo. | echo Файлов с таким расширением - нет)
Помогите пожалуйста разобраться