==========================================================
@echo off
@echo off
Setlocal EnableDelayedExpansion
rem Путь к архиватору (консольному)
set rar="rar.exe"
rem Первый параметр - каталог, в котором лежат файлы для архивирования
set Src=%1
if "%Src%" EQU "" goto help
rem Второй параметр - Путь к каталогу куда будут помещаться архивы
set Dst=%2
if "%Dst%" EQU "" goto help
rem Третий параметр - расширение файлов
set ext=*.*
if "%3" NEQ "" (set ext=%3)
rem Четвертый параметр - пароль для архива
if "%4" NEQ "" (set passw=-hp%4)
:: Пофайловое архивирование с воссозданием каталогов
for /f "delims=" %%i in ('dir /b /s /a-d "%Src%\%ext%"') do (
for /f "delims=" %%j in ("%%i") do (
if not exist "%Dst%%%~pj" (MD "%Dst%%%~pj" > nul)
%rar% a -ep1 -dh -idc -m1 %passw% "%Dst%%%~pj%%~nj" "%%j"
)
)
exit
:help
@echo Пофайловая архивация с воссозданием структуры каталогов
@echo Вызов: %~nx0 каталог_источник каталог_приемник [расширение_файлов] [пароль]
@echo.
@echo Пример1: %~nx0 c:\temp c:\temp1 *.jpg
@echo - архивация всех файлов с раширением jpg без пароля
@echo.
@echo Пример2: %~nx0 c:\temp c:\temp1 "" pupkin
@echo - архивация всех файлов с паролем pupkin
==========================================================
Что-то батник у меня не работает. Куда вставлять путь к архиватору понятно. Не понятно куда здесь вставлять путь к каталогу в котором лежат файлы для архивирования и путь к каталогу куда будут помещаться архивы и пароль? Может разъясните?
(с) Ссылка на страничку автора: http://shsweb.ru/programmirova...turyi-katalogov

quote:
rem Первый параметр - каталог, в котором лежат файлы для архивирования
set Src=%1
if "%Src%" EQU "" goto help
Допустим, исходная папка C:\folder_1. Куда это вставлять? Пытался:
quote:
set Src="C:\folder_1"
if "%Src%" EQU "" goto help
и так:
quote:
set Src=%1
if "%Src%" EQU "C:\folder_1" goto help
НЕ РАБОТАЕТ.
В первом случае при запуске батника чёрное окно появляется на долю секунды и сразу закрывается, видимо, с какой-то ошибкой. Не успеваю прочитать. Во втором случае вижу пустое чёрное окно. Ничего не происходит, кроме зверской 50% загрузки ЦП (четырехъядерный, 3,2 ГГц) процессом cmd.exe. В исходной папке всего штук 5 файлов на 5 мб общим весом. В папке назначения пусто.
PS: Ну я же не спец по программированию...
quote:
@echo off
@echo off
Setlocal EnableDelayedExpansion
rem Путь к архиватору (консольному)
set rar="C:\Program Files\WinRAR\rar.exe"
rem Первый параметр - каталог C:\src, в котором лежат файлы для архивирования
set Src=%1
if "%Src%" EQU "C:\src" goto help
rem Второй параметр - Путь к каталогу C:\dst куда будут помещаться архивы
set Dst=%2
if "%Dst%" EQU "C:\dst" goto help
rem Третий параметр - расширение файлов
set ext=*.*
if "%3" NEQ "" (set ext=%3)
rem Четвертый параметр - пароль для архива
if "%4" NEQ "" (set passw=-hp%4)
:: Пофайловое архивирование с воссозданием каталогов
for /f "delims=" %%i in ('dir /b /s /a-d "%Src%\%ext%"') do (
for /f "delims=" %%j in ("%%i") do (
if not exist "%Dst%%%~pj" (MD "%Dst%%%~pj" > nul)
%rar% a -ep1 -dh -idc -m1 %passw% "%Dst%%%~pj%%~nj" "%%j"
)
)
exit
:help
@echo Пофайловая архивация с воссозданием структуры каталогов
@echo Вызов: %~nx0 каталог_источник каталог_приемник [расширение_файлов] [пароль]
@echo.
@echo Пример1: %~nx0 c:\temp c:\temp1 *.jpg
@echo - архивация всех файлов с раширением jpg без пароля
@echo.
@echo Пример2: %~nx0 c:\temp c:\temp1 "" pupkin
@echo - архивация всех файлов с паролем pupkin
Третий и четвертый параметры не трогал. Там всё без изменений и дополнений. Батник не работает. Вижу пустое чёрное окно. Ничего не происходит, кроме зверской загрузки ЦП процессом cmd.exe.
единственное но, надо поправить в оригинале - прописать полный путь до rar.exe или закинуть его в папку с батником или в system32
Файл1.rar, Файл2.rar, файл3, Файл4.rar -> Файл1.rar, Файл2.rar, файл3.RAR Файл4.rar
code:
@for /r "%~dp0" %%f in (*) do if /i not "%%~xf"==".7z" "%programfiles%\7-Zip\7z.exe" a "%%~dpf%%~nxf.7z" "%%f" -mx9
@del "%~dp0%~n0.7z"
quote:
если попадутся файлы file1.txt и file1.doc то будет вопль архиватора на дубль архива, в этом случае меняем %~ni на %~nxi
А в батнике из 13 поста можно так же сделать?
quote:
в батнике из 13 поста

Можно попробовать %%~nj заменить на %%~nxj
%rar% a -ep1 -dh -idc -m1 %passw% "%Dst%%%~pj%%~nj" "%%j"
%rar% a -ep1 -dh -idc -m1 %passw% "%Dst%%%~pj%%~nxj" "%%j"
И готовые колхозы с батниками тоже гуглятся:
http://www.cyberforum.ru/cmd-bat/thread764356.html
Ну а вообще это называется бэкап, и так бэкап не делают.
https://i.stack.imgur.com/ddWkL.png
Это что за софтина? Если PeaZip, то какой версии? Последняя на сегодня 6-я и там я не вижу функции "рекурсивно архивировать подпапки". Там вообще другой интерфейс, не такой, как на картинке.
quote:
Такое возможно?
code:
@echo off
set SRC=D:\хрень
set DST=D:\архивы
for /D %%D in ("%SRC%\*") do if not exist "%DST%\%%~nD.7z" (
pushd "%SRC%"
"%programfiles%\7-Zip\7z.exe" a "%DST%\%%~nD.7z" "%%~nD\*" -mx9
popd
)
quote:
Изначально написано Froz:
примерно так:
code:
@echo off
set SRC=D:\хрень
set DST=D:\архивы
pushd "%SRC%"
for /D %%D in (*) do if not exist "%DST%\%%~nD.7z" "%programfiles%\7-Zip\7z.exe" a "%DST%\%%~nD.7z" "%%~nD\*" -mx9
popd
Да и если какая-то папка первого уровня внутри будет пустая, то архиватор создаст пустой архив и не засунет туда саму пустую папку.
quote:
Originally posted by Morituruz:
Ну а вообще это называется бэкап, и так бэкап не делают.
quote:
удовлетворяющих
Для дроида существует много шифровальщиков, но нет их версий для винды.
Для винды существует много шифровальщиков, но нет их версий для дроида.
Boxcryptor classic одна из самых удобных софтин, 9существует и для винды и для андроида, однако, они почему-то несовместимы. Файлы, зашифрованные под одной ОСью не открываются под другой, хотя метод шифрования в настройках одинаков AES256 и тут и там и пароль верен. Вот так всё грустно. Поэтому и обратил свой взгляд на rar.
quote:
Veracrypt для андроида
quote:
Изначально написано Froz:
через сторонние webdav-софтины яндекс скорость режет.
Через встроенный виндовый клиент около 50-80 кбит/с максимум выдавало.Кстати, а можно как-то родной яндексовской софтиной одновременно несколько аккаунтов подцепить?
quote:
встроенный виндовый клиент
quote:
родной яндексовской софтиной