Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Кнопки для 7-Zip
Goto page Previous  1, 2, 3 ... 10, 11, 12, 13  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sat Jun 24, 2017 08:07    Post subject: Reply with quote

addhaloka
Ясно. Тогда ждём исправления.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
addhaloka



Joined: 09 Nov 2010
Posts: 169

Post (Separately) Posted: Tue Aug 29, 2017 00:14    Post subject: Reply with quote

Flasher
Вышла 17.01 - ошибка не исправлена. Evil or Very Mad Хотя, может я как-то не так проверял.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Aug 30, 2017 05:41    Post subject: Reply with quote

addhaloka
Отписался. А в ответ получил ту же рекомендацию... Confused
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Thu Aug 31, 2017 22:12    Post subject: Reply with quote

addhaloka
Похоже, что другого решения не будет, т. к. нужно одновременно паковать файлы с наличием - и @ спереди.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
addhaloka



Joined: 09 Nov 2010
Posts: 169

Post (Separately) Posted: Sat Sep 02, 2017 11:30    Post subject: Reply with quote

Flasher wrote:
А в ответ получил ту же рекомендацию...
Quote:
Похоже, что другого решения не будет

Ясно. Значит, исправления не будет, хотя думал, что это обещание исправить:
Quote:
You can get @filename as name of archive or name of file in archive.
So I've disabled @ parsing after -- in 17.00.
But commands for FAR still use it after --.
It's my error.
the problem is more complicated.
I'll think about best way to fix it.

Может, в будущих версиях? Хотя гадать смысла нет...
Back to top
View user's profile Send private message
Nick



Joined: 26 Dec 2014
Posts: 107

Post (Separately) Posted: Mon Sep 04, 2017 13:57    Post subject: Reply with quote

Если для WinRAR не сделать тестирование сразу всех архивов (ссылка), тогда как можно протестировать все выбранные архивы через 7zG?
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Sep 06, 2017 01:36    Post subject: Reply with quote

addhaloka
Это обещание подумать, а не исправить. После раздумий по указанной мной причине другого решения не нашлось.

Nick
Не заметил.
Code:
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\7-zip\7zG.exe
t -scsUTF-16LE -an -ai@%WL -y
Utils\7-zip\7z.dll,13
Протестировать выбранные в активной панели архивы

_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
LonerD



Joined: 04 Jan 2011
Posts: 1168
Location: Донецк

Post (Separately) Posted: Fri Sep 14, 2018 15:16    Post subject: Reply with quote

AutoHotkey скрипт для распаковки выделенных файлов с помощью архиватора 7-Zip (всё в текущий каталог или же для каждого архива будет создаваться отдельный каталог с именем файла).
Предусмотрена проверка на наличие точки в конце каталога куда производится распаковка.
Можно пытаться распаковывать как все файлы (архиватор будет выводить стандартное окно ошибки если не может осилить распаковку), так и только файлов из списка поддерживаемых форматов (список взят из справки 7-Zip).

Ссылка на скрипт.

Примерный вариант параметров
%WL "%%commander_path%%\Plugins\arc\7-Zip\7zG.exe" 1 1 u
Unpack selected archives with 7-Zip

%WL "%%commander_path%%\Plugins\arc\7-Zip\7zG.exe" 0 1 u
Unpack selected archives with 7-Zip to current directory


Code:

;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~;
; Total Commander DreamLair                        ;
; Script: Unpack Selected Archives with 7-Zip      ;
; Script version: 1.0 (2018.09.14)                 ;
; Script author: LonerD                            ;
; Site: https://dreamlair.net                      ;
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~;
; Parameters:                                      ;
;  1) %WL (required)                               ;
;  2) Path to archiver (required)                  ;
; ("%%commander_path%%\Plugins\arc\7-Zip\7zG.exe") ;
;  3) Unpack to subdir (1|0)                       ;
;  4) Unpack only supported extensions (1|0)       ;
;  5) Mode (a|s|u - overwrite all|skip|rename)     ;
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~;

#NoEnv
#NoTrayIcon
#SingleInstance ignore

if not ( WinExist("ahk_class TTOTAL_CMD") || WinActive("ahk_class TTOTAL_CMD") )
  ExitApp

Filelist = %1%
7ZipPath = %2%
ToSubdir = %3%
Supported = %4%
Overwrite = %5%

if 0 < 5
  Overwrite = u
if 0 < 4
  Supported = 1
if 0 < 3
  ToSubdir := 1
if 0 < 2
  ExitApp

EnvGet, commander_path, commander_path
Transform, 7ZipPath, Deref, % 7ZipPath
7ZipPath := ExpandEnvVars (7ZipPath)

if Overwrite not in a,s,u
  Overwrite:= s
if Supported not in 0,1
  Supported:= 1

if ( Supported = "1" )
  SupportedExt := "7z,7zip,7-zip,exe,bz2,bzip2,tbz2,tbz,gz,gzip,tgz,tar,wim,swm,esd,xz,txz,zip,zipx,jar,apk,xpi,odt,ods,docx,xlsx,epub,apm,ar,a,deb,lib,arj,cab,chm,chw,chi,chq,msi,msp,doc,xls,ppt,cpio,cramfs,dmg,ext,ext2,ext3,ext4,fat,hfs,hfsx,hxs,hxi,hxr,hxq,hxw,lit,ihex,iso,img,lha,lzh,lzma,mbr,mslz,mub,nsis,ntfs,rar,r00,rpm,ppmd,qcow,qcow2,qcow2c,squashfs,udf,scap,uefif,vdi,vhd,vmdk,xar,pkg,z,taz"

Loop, Read, % Filelist
{
  TargetFile = %A_LoopReadLine%
  SplitPath, TargetFile, FileName, FileDir, FileExt, FileNameNoExt

  if not InStr(FileExist(TargetFile), "D")
  {
    if ( ToSubdir = "0" )
      TargetPath := FileDir . "\"
      else
        TargetPath := FileDir . "\" . FileNameNoExt . "\"

     While InStr(TargetPath, ".\")
       TargetPath := StrReplace(TargetPath, ".\", "\")

      if ( Supported = "0" )
      RunWait, %7ZipPath% x -scsUTF-8 -ao%Overwrite% -o"%TargetPath%" -- "%TargetFile%"
      else if FileExt in % SupportedExt
        RunWait, %7ZipPath% x -scsUTF-8 -ao%Overwrite% -o"%TargetPath%" -- "%TargetFile%"
  }
}

ExitApp

;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~;
ExpandEnvVars(ppath)
{
  VarSetCapacity(Dest, 2000)
  DllCall("ExpandEnvironmentStrings", Str, ppath, Str, Dest, Int, 1998)
  Return, Dest
}
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~;

_________________
Win11 x64 Eng | TC DreamLair eternal pre-α
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Fri Sep 14, 2018 16:25    Post subject: Reply with quote

LonerD
Что-то тебя не в тот раздел занесло. Мухи (кнопки) отдельно, котлеты (скрипты) отдельно. Мой усовершенствованный распаковщик пропустил, видимо? Wink
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
LonerD



Joined: 04 Jan 2011
Posts: 1168
Location: Донецк

Post (Separately) Posted: Wed Mar 06, 2019 20:13    Post subject: Reply with quote

Flasher
Имеется команда
Code:
[em_7Zip_crypt]
cmd=%commander_path%\Plugins\exe\AskParam.exe
param=/c"7-Zip Archive with Date" /u"-mx9 -m0=LZMA2 -mse -ssw -scsUTF-16LE -y" /t"-mx9 -m0=LZMA -mse -ssw -scsUTF-16LE -y" /p"Compression Parameters" /u"pass" /p"Password" /s0 %%comspec%% /c setlocal & for /f "tokens=1-6 delims=:., " %%%%a in ('echo %%%%date%%%% %%%%time:~0,8%%%%') do "%%%%commander_path%%%%\Plugins\arc\7-Zip\7zG.exe" a -t7z %%1 -p%%2 -mhe "%P%N [%%%%c.%%%%b.%%%%a_%%%%d.%%%%e.%%%%f].7z" ""%P%N""


Подскажи, пожалуйста, что в ней можно исправить/оптимизировать, заменить %P%N на @%WL и добавить отображение даты в имени в виде [2019.03.06-19.00.00] ?
_________________
Win11 x64 Eng | TC DreamLair eternal pre-α


Last edited by LonerD on Thu Mar 07, 2019 03:21; edited 3 times in total
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Thu Mar 07, 2019 02:19    Post subject: Reply with quote

LonerD
Есть смысл подвязать этот скрипт. Если устроит в части даты, здесь подскажу что исправить в 37 строке для указанного формата (на cmd c учётом региональных настроек это исполнять нецелесообразно).
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
LonerD



Joined: 04 Jan 2011
Posts: 1168
Location: Донецк

Post (Separately) Posted: Thu Mar 07, 2019 03:22    Post subject: Reply with quote

Flasher
Скрипт не так интересен. Пытаюсь понять где ошибка в дате. Подправил запись команды, вроде раньше в таком виде работала, а сейчас галиматья вместо даты... И при замене на @%WL если выбрать несколько файлов - выбивается ошибка (список удаляется до того, как архиватор отработает).
_________________
Win11 x64 Eng | TC DreamLair eternal pre-α
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Thu Mar 07, 2019 03:35    Post subject: Reply with quote

LonerD
Не так интересен по какой причине? При том, что он учитывает список исключений, добавляет счётчик в имя при необходимости и работает длинными (260+) путями.

Про дату я уже написал. Изменишь формат в региональных — и (без использования громоздких костылей) всё полетит к чертям. На PowerShell сделать ещё можно.

И в твоём случае не было смысла задействовать for:
Code:
for /f "tokens=1-6 delims=:., " %a in ('echo %date% %time:~0,8%') do echo %c.%b.%a_%d.%e.%f
, когда есть вариант без оного:
Code:
echo %date:~6,4%.%date:~3,2%.%date:~,2%_%time:~,2%.%time:~3,2%.%time:~6,2%

Также не понял, что у тебя в коде делает setlocal и двойное указание %P%N без кавычек и с ними, ещё при том, что по синтаксису имя архива указывается после команды a.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
LonerD



Joined: 04 Jan 2011
Posts: 1168
Location: Донецк

Post (Separately) Posted: Thu Mar 07, 2019 15:47    Post subject: Reply with quote

Flasher
Flasher wrote:
Не так интересен по какой причине?

Скрипт я и сам смогу сделать (не такой масштабный и изящный, но решающий проблему). Но ради одной не особо используемой команды хотелось "элегантное" решение.

Flasher wrote:
Также не понял, что у тебя в коде

Давно это делал... помню разбирался с этими конструкциями из четырёх процентов, и на тот момент получился рабочий вариант.

Flasher wrote:
Изменишь формат в региональных — и (без использования громоздких костылей) всё полетит к чертям.

Теперь понял, коварно задумано в системе. Спасибо. Тогда вопрос снимается.
_________________
Win11 x64 Eng | TC DreamLair eternal pre-α
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Thu Mar 07, 2019 16:08    Post subject: Reply with quote

LonerD wrote:
Теперь понял, коварно задумано в системе.
Ну, да. Иноязычные вариации тут и далее как-то разбирали. В батнике я обычно временно ставил dd.MM.yyyy в HKCU\Control Panel\International\sShortDate, т.к. это куда быстрее, чем парсинг wmic os get localdatetime.

Хотя, с другой стороны, с ним будет короче:
Code:
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Plugins\exe\AskParam.exe /c"7-Zip Archive with Date" /u"LZMA2" /t"LZMA" /p"Compression Parameters" /u"pass" /p"Password" /s0 %ComSpec% /v:on /q/c "(for /f "skip=1" %%# in ('wmic os get localdatetime')
do >nul set /a c+=1 &set !c!=%%%%~n#)&&"!COMMANDER_PATH!\Plugins\arc\7-Zip\7z.exe" a ""%N" [!1:~,4!.!1:~4,2!.!1:~6,2!_!1:~8,2!.!1:~10,2!.!1:~12!].7z" -m0=%%1 -p%%2 -mx -mhe -ssw -y -scsUTF-16LE @%WL"
Plugins\arc\7-Zip\7z.dll
Упаковка выбранного в "<CurrentName> [yyyy.MM.dd_HH.mm.ss].7z" с выбором алгоритма LZMA/2
Но тут есть один неприятный момент с несвоевременным нестабильным слетанием файла-списка, вероятно, по причине завершения исходного процесса (AskParam в данном случае). С этим, если что, не ко мне, а к Гислеру и MVV.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3 ... 10, 11, 12, 13  Next
Page 11 of 13

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group