Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » WinRAR (часть 4)

Модерирует : gyra, Maz

Maz (31-07-2023 08:32): WinRAR (часть 5)  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201

   

Maz



Дед Мазай
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
По вопросам лечения (кряки, патчи и т.д.), а также разблокировки архивов, обращаемся в «Варезник».
Отдельная тема по сборкам WinRAR
Предыдущие части темы: 1 | 2 | 3



 
Официальный русский сайт: win-rar.com
Официальный e-mail разработчика WinRAR (писать на русском): dev@rarlab.com
 
Стабильная английская версия: 6.22 x86 | x64 (31 мая 2023 г.)
Стабильная русская версия:  6.22 x86 | x64 (31 мая 2023 г.)

Текущая английская бета-версия:  6.23 beta 1 x86 | x64
Текущая русская бета-версия:  6.23 beta 1 x86 | x64

Примечание: английская бета-версия обновляется регулярно, без изменения номера версии. подробнее...
Список изменений на английском языке
(на родном – смотрите файл WhatsNew.txt в дистрибутиве на вашем языке)
Скачать RAR для macOS, FreeBSD, Linux, Android можно здесь.

Скачать ранее вышедшие версии можно с официального FTP
Таблица совместимости версий с различными ОС

Версия 3.62 (ru) с подарочным ключом (респект камраду elmorte)

Коллекция всех ранее выходивших версий WinRAR 1.54b - 6.22 (1995-2023): скачать (311 МБ) [обновлено 31.05.2023]

вместо F.A.Q. || альтернативные архиваторы

Почему опять задерживается русская версия? А при русском разработчике на языке XXX уже давно есть. Не захламляйте тему подобными вопросами.

Кому не нравится новая тема оформления - скачайте с официального сайта rarlab.com (из раздела Themes) и установите себе WinRAR Classic theme by Francesco Indrio
Стандартная (48x36). Маленькие кнопки (24x24)

В теме активно отвечает на вопросы автор архиватора Евгений Рошал! Ситуация уникальная, прошу пользоваться.

Всего записей: 38758 | Зарегистр. 26-02-2002 | Отправлено: 19:30 27-08-2020 | Исправлено: DimmY, 17:47 20-07-2023
GoblinNN

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
grey109
так он локально и сжимается в %temp%
проверил. все равно валит сразу. правда я проверял по самбе и через gui.
2Евгений: этот момент как лучше сделать? такое ощущение эта настройка ни на что не влияет...

можно как-то принудительно заставить winrar делать архив локально, если он делается сразу в сеть.?

Всего записей: 2907 | Зарегистр. 11-10-2005 | Отправлено: 18:06 10-02-2022 | Исправлено: GoblinNN, 18:21 10-02-2022
los

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Формат - да, а конкретное имя - нет.  

$ rar a -ag_DD_MMM_YYYY_NN foo file
$ find . -type f -name 'foo_10_Feb_2022_??.rar'
./foo_10_Feb_2022_01.rar

подключить команду date и почти все имя будет из переменных. Речь не windows, конечно.

Всего записей: 7322 | Зарегистр. 08-09-2001 | Отправлено: 18:30 10-02-2022
Fenrizz



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
los
А если таких файлов будет несколько?  
Правильнее парсить вывод команды dir с сортировкой по дате изменения в обратном порядке и брать последний (как и предлагал uShell)

Код:
for /f "tokens=*" %%A in ('dir /B /A:-D /O:D foo_10_Feb_2022_??.rar') do set lastname=%%A
echo %lastname%

 
Либо так

Код:
IF "%date:~3,2%"=="01" set MMM=Jan
IF "%date:~3,2%"=="02" set MMM=Feb
IF "%date:~3,2%"=="03" set MMM=Mar
IF "%date:~3,2%"=="04" set MMM=Apr
IF "%date:~3,2%"=="05" set MMM=May
IF "%date:~3,2%"=="06" set MMM=Jun
IF "%date:~3,2%"=="07" set MMM=Jul
IF "%date:~3,2%"=="08" set MMM=Aug
IF "%date:~3,2%"=="09" set MMM=Sep
IF "%date:~3,2%"=="10" set MMM=Oct
IF "%date:~3,2%"=="11" set MMM=Nov
IF "%date:~3,2%"=="12" set MMM=Dec
 
set HHMMSS=%time::=%
set HHMMSS=%HHMMSS:~0,6%
 
echo %date:~0,2%_%MMM%_%date:~6,4%_%HHMMSS%.rar  

Всего записей: 677 | Зарегистр. 12-09-2017 | Отправлено: 19:08 10-02-2022 | Исправлено: Fenrizz, 19:17 10-02-2022
los

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Fenrizz

Цитата:
А если таких файлов будет несколько?  

В поставленной задаче изменяться будут значения NN
rar a -ag_DD_MMM_YYYY_NN foo file
foo_10_Feb_2022_01.rar
foo_10_Feb_2022_02.rar
foo_10_Feb_2022_03.rar и т.д. т.е. последний по времени создания файл это -foo_10_Feb_2022_03.rar, но если оперировать именно датой создания то команда find позволяет это делать(речь о *.nix системах) там вообще эту задачу можно решить несколькими путями. Наверное какие-то из них подойдут и для windows. Сам rar в ком. строке отображает имя создаваемого файла
$ rar a -ag_DD_MMM_YYYY_NN foo file
 
Creating archive foo_10_Feb_2022_05.rar
 
Adding    file                                                        OK
Done

следовательно чтобы его получить не нужны ни dir(windows) ни ls или find(*nix)
 
 

Всего записей: 7322 | Зарегистр. 08-09-2001 | Отправлено: 19:30 10-02-2022
EugeneRoshal

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GoblinNN

Цитата:
2Евгений: этот момент как лучше сделать? такое ощущение эта настройка ни на что не влияет...  

Она работает при обновлении архива, но не при создании нового. Это папка для временных файлов, а при создании нового архива временные файлы не нужны. Новый архив создается сразу где указано.

Цитата:
можно как-то принудительно заставить winrar делать архив локально, если он делается сразу в сеть.?

Нельзя, раньше никто этим не интересовался. Видимо, в аналогичных сценариях наиболее очевидный подход это создать архив локально, а потом вручную или в .bat файле его скопировать. Для автоматизации этого и задумывался -loga.

Всего записей: 2242 | Зарегистр. 29-04-2013 | Отправлено: 19:37 10-02-2022
uShell

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
чтобы его получить не нужны ни dir

Действительно, можно и так:
for /f "tokens=1,2*" %a in ('rar ...') do @if %a==Creating if %b==archive move %c путь_на_сервере
Но будет недостаток - для отображения вывода Rar.exe пользователю нужно использовать tee (которой штатно в Windows нет) или городить сложный батник.

Всего записей: 1004 | Зарегистр. 12-06-2019 | Отправлено: 19:40 10-02-2022 | Исправлено: uShell, 19:41 10-02-2022
Fenrizz



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
uShell

Цитата:
Но будет недостаток - для отображения вывода Rar.exe пользователю нужно использовать tee (которой штатно в Windows нет) или городить сложный батник.

Не сложный
 

Код:
for /f "tokens=1,2,3" %%A in ('""C:\Program Files\WinRAR\rar.exe" a -ag_DD_MMM_YYYY_NN backup *.txt | findstr /C:"Creating archive""') do echo %%C  

Всего записей: 677 | Зарегистр. 12-09-2017 | Отправлено: 20:07 10-02-2022 | Исправлено: Fenrizz, 20:22 10-02-2022
d4RJe



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, если покупать ключ, он будет действовать бесконечно или на определенный период?

Всего записей: 198 | Зарегистр. 29-04-2014 | Отправлено: 20:25 10-02-2022
GoblinNN

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EugeneRoshal

Цитата:
Нельзя, раньше никто этим не интересовался.

так сейчас и съемных дисков мало у кого осталось. сетевые в ходу. вон чего народ творит. сейчас программу напишут. а нужно просто создавать временно локально архив а не в сети.

Всего записей: 2907 | Зарегистр. 11-10-2005 | Отправлено: 20:28 10-02-2022
uShell

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Fenrizz
Ничего подобного - в Вашем примере только имя архива и выведется. Хотя да, через findstr короче, чем через двойной if.

Всего записей: 1004 | Зарегистр. 12-06-2019 | Отправлено: 20:57 10-02-2022
Fenrizz



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
uShell
А что ещё надо? Вместо echo надо просто написать команду загрузки на сервер

Код:
ftpput --server=ftp.unixwiz.net --verbose --user=steve --pass=qwerty %%C  

Всего записей: 677 | Зарегистр. 12-09-2017 | Отправлено: 21:12 10-02-2022
EugeneRoshal

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
d4RJe

Цитата:
Подскажите, если покупать ключ, он будет действовать бесконечно или на определенный период?

Формально применимость ключа ко всем следующим версиям не гарантируется. Реально двадцатилетней давности ключ от WinRAR 2.60 работает и с 6.10. Я не могу обещать, что так будет всегда, но на данный момент я не слышал о планах win.rar GmbH об изменении этой политики в недалеком будущем.
 
Исключение - продающиеся иногда с большой скидкой ключи с привязкой к конкретной версии. Они работают только с указанной версией и точно не будут со следующей. Но такая привязка оговаривается при продаже, и у пользователя есть возможность выбора между таким ключом и стандартным.
 
Выше я упомянул win.rar GmbH, так как я разработчик, а вопросами лицензирования и продажами занимается эта компания.

Всего записей: 2242 | Зарегистр. 29-04-2013 | Отправлено: 21:54 10-02-2022
mig73



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EugeneRoshal
А ценовой политикой тоже win.rar GmbH занимается?

Всего записей: 8283 | Зарегистр. 24-02-2010 | Отправлено: 22:08 10-02-2022
EugeneRoshal

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GoblinNN

Цитата:
так сейчас и съемных дисков мало у кого осталось. сетевые в ходу.

По умолчанию включать такое поведение -w для всех сетевых дисков нельзя. И внешние USB диски, и сетевые могут быть быстрыми и медленными. Для каких-то может оказаться быстрее создавать архив по месту, для других - локально и копировать. Кроме того, это зависит и от среднего размера файла в архиве. Если мы пакуем один большой файл, запись пойдет большими блоками, и производительность не будет сильно отличаться от копирования. Я думаю, разницу можно увидеть при упаковке множества мелких файлов, и то если для диска не поддерживается локальный кэш с отложенной записью.
 
Это надо делать опцию типа "скопировать архив после создания в указанную папку". Но меня в моем .bat для бэкапа вполне устроило сочетание -loga=.arcname -ag с последующим set /p arcname=<.arcname. После чего %arcname% можно хоть копировать, хоть файлы к нему добавлять. А то так можно придумать опции типа "добавить к архиву после создания еще файлов" и прочие из разряда сделать с архивом что-нибудь после создания.
 
Добавлено:
mig73
Да.

Всего записей: 2242 | Зарегистр. 29-04-2013 | Отправлено: 22:15 10-02-2022
uShell

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Fenrizz
Я говорил о контроле за ходом архивирования:

Цитата:
недостаток - для отображения вывода Rar.exe пользователю нужно использовать tee (которой штатно в Windows нет) или городить сложный батник

Впрочем, если за консолью сидит пользователь, то все эти рассуждения ни о чём: скопировать имя архива из консоли да в неё же после move и вставить.
 
grey109, GoblinNN
Думаю, что выигрыша от локальной записи архива не будет, т.к. в сеть идёт исключительно запись: обновление Data size и Data CRC32 выполняется в памяти архиватора, так что после записи сжатого файла следует перезапись заголовка без изменения его длины. Если на передающей стороне нормально реализовано кэширование, то даже увеличения количества пакетов не произойдёт (это уже успел отметить EugeneRoshal). Надёжность, да, ухудшается, но не сильно: битые пакеты отслеживаются по контрольной сумме, и с большой вероятностью либо повторится их пересылка, либо архиватор получит сигнал "сбой записи". UPD: кажется, я понял мысль grey109: в ненадёжной сети можно потратить уйму времени на архивацию 99% и потерять весь архив из-за обрыва соединения, а на диске вероятность такого исхода крайне мала (если только места заведомо хватает).

Всего записей: 1004 | Зарегистр. 12-06-2019 | Отправлено: 22:21 10-02-2022 | Исправлено: uShell, 22:24 10-02-2022
los

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Fenrizz, как и предполагалось всю операцию архивирование и загрузку на сервер можно выполнить в терминале практически одной строкой

Всего записей: 7322 | Зарегистр. 08-09-2001 | Отправлено: 22:24 10-02-2022
EugeneRoshal

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
uShell

Цитата:
UPD: кажется, я понял мысль grey109

Я, видимо, тоже сначала упустил, о чем идет речь, так как я оценивал ситуацию с точки зрения производительности, а не обрыва соединения. Но тогда в случае .bat и внешней утилиты копирования есть дополнительный плюс. Если такие обрывы часты, в .bat можно попробовать реализовать автоматический повтор копирования при сбое в его процессе при восстановлении соединения. В самом RAR такое отказоустойчивое копирование вряд ли уместно.

Всего записей: 2242 | Зарегистр. 29-04-2013 | Отправлено: 23:30 10-02-2022
grey109



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EugeneRoshal

Цитата:
 -loga=.arcname -ag с последующим set /p arcname=<.arcname

На этом варианте пока и остановлюсь.
 
Всем спасибо!

Всего записей: 173 | Зарегистр. 13-11-2003 | Отправлено: 11:33 11-02-2022 | Исправлено: grey109, 13:58 11-02-2022
GoblinNN

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EugeneRoshal

Цитата:
Выше я упомянул win.rar GmbH, так как я разработчик, а вопросами лицензирования и продажами занимается эта компания.

передайте им тогда, что в России webmoney кончился. совсем. paypal тоже все сложно. остаются только карточки. пусть прикрутят юmoney наследник яндекс.денег.

Всего записей: 2907 | Зарегистр. 11-10-2005 | Отправлено: 14:57 11-02-2022
Bersaglio



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GoblinNN
Вы думаете, пользователи Windows 11 будут покупать WinRAR? Лично я, например, купил  бы RAR 2.50 для DOS, стыдно пиратским ключом регистрировать. Он мне реально нужен в DosBox, а для WinRAR 2.60+ лицензия куплена ещё в конце прошлого века...

Всего записей: 3998 | Зарегистр. 21-08-2006 | Отправлено: 22:02 11-02-2022 | Исправлено: Bersaglio, 22:03 11-02-2022
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201

Компьютерный форум Ru.Board » Компьютеры » Программы » WinRAR (часть 4)
Maz (31-07-2023 08:32): WinRAR (часть 5)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru