Войти

Показать полную графическую версию : Архивация 7z


gmdanil
17-08-2016, 11:59
Добрый день. Подскажите пожалуйста есть батник
7za -tzip "d:\backup\%date%_.zip" "d:\test\*.*" -sdel

Прочитал справку от 7z не нашел как добавить фильтр чтоб брал файлы только предыдущего дня. Помогите

Iska
17-08-2016, 13:43
файлы … предыдущего дня »
Созданные вчера? Изменённые?

gmdanil
17-08-2016, 13:56
Созданные вчера, измененные. Пишутся логи каждый день, на след день буду запускать батник и чтоб.он не брал файлы которые созданы сегодня

Elven
17-08-2016, 14:01
forfiles /?

gmdanil
17-08-2016, 17:10
Извините новичок еще а что означает /?

Iska
17-08-2016, 17:13
а что означает /? »
Для утилиты командной строки «forfiles.exe» — получение справки. Откройте командную строку, введите вышеуказанное, прочитайте.

gmdanil
18-08-2016, 09:18
Добрый день! Спасибо за помощь, прочитал справку, я так понял сделать так, но не понял как сделать вчерашний день 7za -tzip "d:\backup\%date%_.zip" "d:\test\*.*" forfiles /d -1 /m *.txt -sdel правильно?
Не работает берет все файлы и не нравится тег /d -1

Elven
18-08-2016, 12:45
pushd d:\test\
forfiles /d -1 /m *.txt /c "7za -tzip "d:\backup\%date%_.zip" "@path" -sdel"
popd


Приблизительно так, НО писано на коленке, не проверял, так что не факт что оно сработает правильно, если вообще сработает. За команды 7z вообще ничего не скажу, не пользуюсь оным.
Кроме того /d -1 берет файлы вчерашние или старше, если нужно брать ТОЛЬКО за вчера - будет несколько замудреннее.

Iska
18-08-2016, 14:54
Elven, лучше сначала сформировать список файлов посредством forfiles, а затем передавать его 7-Zip'у, нежели дёргать 7-Zip для каждого подходящего файла.

gmdanil
19-08-2016, 09:15
Попробовал команду не работает, убрал команду даты не сработал потом попробовал убрать команду типа файла

alpap
19-08-2016, 11:37
@echo off
set "d_in=papka_in"
set "d_out=papka_out"
for /f "delims=" %%a in ('forfiles /p "%d_in%" /m *.txt /d -1 /c "cmd /c echo @path"') do "%ProgramFiles%\7-Zip\7z.exe" -tzip a "%d_out%\%%~na_%date%.zip" "%%~a"
exit
.

gmdanil
24-08-2016, 13:58
спасибо, теперь возникла ситуация, надо эти файлы на другой сервер, подскажите как сделать

gremlintv2
24-08-2016, 15:43
надо эти файлы на другой сервер
Скопировать файлы, измененные за последние 5 дней (исключая сегодня). (предварительно расшарив, и изменив параметры безопасности целевой папки, естественно)

robocopy "E:\Documents" "\\NAS\BACKUP\Documents" /maxage:5 /minage:1

Robocopy разработана для отказоустойчивого копирования каталогов и деревьев каталогов. Она обладает возможностью копирования всех (или выборочных) NTFS атрибутов и свойств, имеет дополнительный код для перезапуска при применении с сетевым соединением в случае его разрывов.
Почитать об утилите можно: здесь (http://www.cyberforum.ru/cmd-bat/thread792016.html),здесь (https://ru.wikipedia.org/wiki/Robocopy) и здесь (https://technet.microsoft.com/en-us/library/cc733145(WS.10).aspx)




© OSzone.net 2001-2012