Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Маришка, непонятки с выбором архиватора - в 1-м посте заявлен RAR, а в примере ARJ. Вот вариант с ARJ32. Путь к архиватору должен быть прописан в переменной PATH, либо нужно в командной строке указать полный путь к ARJ32.EXE.
читать дальше »
Код: Выделить весь код
:: %1 - путь к flash-диску (F:)
:: %2 - путь к рабочему каталогу (С:\FLASH_TEMP)

:: подавление вывода команд на экран
@echo off
:: проверка переданных параметров
if "%~2"=="" (
  echo Не заданы параметры скрипта. Процесс прерван.[/color]
  pause>Nul
  exit
)
:: проверка наличия рабочего каталога
if not exist "%~2" (set "YN=Y"
) else set/p YN="Обнаружен рабочий каталог. Перезаписать? [YN]: "
:: удаление рабочего каталога в зависимости от выбора пользователя
if exist "%~2" if /i "%YN%"=="Y" (RD /S/Q "%~2") else (
  echo Процесс прерван пользователем.
  pause>Nul
  exit
)
:: копирование в рабочий каталог
xcopy /s/r/h/y "%~1\*" "%~2\"
if errorlevel 1 (
  echo Ошибка копирования. Процесс прерван.
  pause>Nul
  exit
)
:: форматирование flash-диска
Echo Y|format "%~1" /Q /FS:FAT32 /V:BAT
if errorlevel 1 (
  echo Ошибка форматирования "%~1". Процесс прерван.
  pause>Nul
  exit
)
:: переход в рабочий каталог
pushd "%~2"
if errorlevel 1 (
  echo Ошибка перехода в рабочий каталог "%~2". Процесс прерван.
  pause>Nul
  exit
)
:: архивация в 1-й группы
arj32 m "group1.arj" "data*" -r -p1
if errorlevel 1 (
  echo Ошибка архивации файлов 1-й группы. Процесс прерван.
  pause>Nul
  exit
)
:: архивация в 2-й группы
arj32 m "group2.arj" "*" -r -p1 -xGroup1.arj
if errorlevel 1 (
  echo Ошибка архивации файлов 2-й группы. Процесс прерван.
  pause>Nul
  exit
)
:: перемещение архивов на flash-диск
move /-y group?.arj "%~1"
if errorlevel 1 (
  echo Ошибка перемещения архивов. Процесс прерван.
  pause>Nul
  exit
)
:: возвращение в каталог с батником
popd
:: удаление рабочего каталога
rd /s/q "%~2"
:: выход
exit
Это сообщение посчитали полезным следующие участники:

Отправлено: 07:10, 26-05-2011 | #4