Описание команды | |
joinz |
Склеить небольшие файлы.
joinz=%L,%WL||cliplist||LISTF<>||PS<>||FOLDC<>||FOLDM<>||LISTC<>||FLST<>||$var_aa||$GLOBALNAME||Path, ||owrite<>, ||upd<>, ||progres<>, ||Dialogs, ||<info>, ||<xinfo>, ||cntlr<>, , ||delim<>, ||code<>
Параметры:
1-й обязательный параметр. Может иметь несколько вариантов: | |
%L, %WL | Список выделенных файлов. Также может использоваться путь к файлу списка полных путей файлов %P%N. см. Дополнение №7 или с:\List.txt |
cliplist | Список полных путей объектов из буфера обмена. |
LISTF<> | Список заданных объектов. см. Дополнение №22. |
PS<> | Список объектов каталога. см. Дополнение №22. |
FOLDC<> | Список объектов содержимого каталогов. см. Дополнение №22. |
FOLDM<> | Список выделенных объектов и всех объектов в подпапках. см. Дополнение №22. |
LISTC<> | Список объектов из выделенных без дубликатов. см. Дополнение №22. |
FLST<> | Смешанные списки объектов по заданному списку. см. Дополнение №22. |
$var_aa | Массив. Переменная $var_a... - массив путей, созданный в команде exect. |
$GLOBALNAME | Массив. Список путей глобальной переменной см. Дополнение №23. |
2-й обязательный параметр. | |
Path | Путь создания общего файла. Path//Flag(//Name.Ext//Insert). Подпараметры разделяются символами // Может быть от 2-х (обязательных) до 4-х подпараметров, где: Path - путь назначения, где создавать файл. Flag : 0 - не перезаписывать имеющиеся объекты. Добавление счётчика. (по умолчанию). 1 - перезаписывать имеющиеся объекты. 2 - дописывать, если существует. 3 - добавление счётчика к целевому пути, если он существует. 4 - пропустить при совпадении имени объекта. 9 - проверка создания файла с помощью параметра owrite<> Name.Ext - имя и расширение создаваемого файла. Insert - добавление к базовому имени. Если Insert начинается с ** то последующая строка заменяет расширение. Если Insert начинается с ++ то последующая строка добавляет расширение. Если Path=x, Name=x, Ext=x , то путь/имя/расширение берётся из пути оригинального файла. Может использоваться подпараметр rndm - информация случайных данных см. Дополнение №30 Если 2-й параметр равен нулю "0", то файл создаваться не будет. |
Дополнительные параметры: | |
owrite<> | Перезапись. Параметр owrite<Number>, где Number: Описание |
upd<> | Обновление панели. Описание |
progres<> | Прогресс бар. Параметр progres<> - если указан, то при операции будет запущен прогресс бар. Учитывается ключ MsBoxAtTheCompletion в TCIMG.ini в секции [Setting]. |
Dialogs | Диалоги. см. Дополнение №18 Описание |
<info> | Получение различной информации. см. Дополнение №10. |
<xinfo> | Получение различной информации. см. Дополнение №10. Аналог параметра <info>, имеет возможность внутри параметра использовать параметр <info> Пример: <xinfo=o450<info=f50FilePath//>//> |
cntlr<> | Счётчик. При совпадении имён: 0 - счётчик слева. 1 - счётчик справа (по умолчанию). |
Дополнительные параметры для склеивания текстовых файлов: | |
delim<> | Разделитель. Параметр delim<Delimeter(!!Mode)>, где: Delimeter - строка-разделитель между содержанием текстовых файлов. Mode [необязательный] - режим вставки разделителя: 0 - в начало содержимого каждого файла (по умолчанию). 1 - в конец содержимого каждого файла. 2 - в начало и конец содержимого каждого файла. 3 - между содержимым файлов. В разделителе могут использоваться |
code<> | Кодировка. Параметр code<Number>, где Number: 0 - ANSI 1251. 1 - UTF-16 LE 1200. 2 - UTF-16 BE 1201. 3 - UTF-8 с BOM. 4 - UTF-8 без BOM. По умолчанию кодировка первого текстового файла. |
Примечания:
Один из вариантов использования: можно спрятать архивы внутри jpg изображения. Для этого в списке изображение должно быть первым, а архивы (к примеру rar) последующими. Создастся склеенный файл jpg (большего размера), который так же будет функционировать, но в нём будут находится и заданные архивы. Извлечь архивы можно через архиватор или переименовать расширение jpg в rar и с помощью Total Commander распаковать (войти в файл как в папку)...См. также:
exbnf, exbns, joinb, joinf, maskx, maskz, reszf, reszs, sdupl, splis, split
Примеры: | Как создать кнопку? |
global joinz=%WL||"%t"//9//Summa.txt||delim<@CRLF!!3>||owrite<13|xxx>||progres<>||upd<3> GLOBALJOINZ0<a> GLOBALJOINZ<a> GLOBALJOINZ1<a> GLOBALJOINZ2<a> ;; склеить текстовые файлы активной панели с заданным разделителем и создать полученный файл в другой панели именем Summa.txt и получить списки результатов (если файл существует, то целевому файлу добавляется расширение xxx)
global joinz=PS<"%p"//1>||"%t"//0//Summa.txt||progres<>||upd<3> GLOBALJOINZ0<a>, GLOBALJOINZ<a> ;; склеить все файлы активной панели и создать полученный файл в другой панели именем Summa.txt и получить списки результатов
imgpr=1 slist=FOLDM<%WL//-2//-1> <FOR> 1 <TO> GLOBALSLIST<0> joinz=PS<GLOBALSLIST<:INDEX:>//1>||%P%N//2//<info=o73GLOBALSLIST<:INDEX:>//>.txt <NEXT> delss=$GLOBALSLIST||1 ;; склеить все файлы каждой подпапки выделенных папок с размещением результирующих файлов (с именем родительской папки, с дописыванием при совпадении) в 1-м уровне выделенных папок с последующим удалением всех подпапок
joinz=%WL||"%p"//0//"%O-@<info=s47>.%E" ;; склеить бинарные данные выделенных файлов, и создать полученный файл в другой панели именем файла под курсором + системное время
joinz=%WL||"%t"//0//%N ;; склеить бинарные данные выделенных файлов, и создать полученный файл в другой панели именем файла под курсором
joinz=%WL||"%t"//0//Summa.txt||delim<@CRLF=======@CRLF!!3>||progres<>||upd<3> ;; склеить текстовые файлы активной панели с заданным разделителем и создать полученный файл в другой панели именем Summa.txt
joinz=%WL||"%t"//0//Summa.txt||delim<@CRLF=======@CRLF>||code<4>||progres<>||upd<3> ;; склеить текстовые файлы активной панели с заданным разделителем, кодировкой и создать полученный файл в другой панели именем Summa.txt
joinz=%WL||"%t"//1//%N ;; склеить бинарные данные выделенных файлов, и создать полученный файл в другой панели именем файла под курсором (перезаписывать, если существует)
joinz=%WL||"%t"//1//%N||progres<> ;; склеить бинарные данные выделенных файлов, и создать полученный файл в другой панели именем файла под курсором (перезаписывать, если существует) + отображение прогресс бара
joinz=%WL||"%t"//2//%N ;; склеить бинарные данные выделенных файлов, и создать полученный файл в другой панели именем файла под курсором (дописывать, если существует)
joinz=%WL||"%t"//2//%N||progres<> ;; склеить бинарные данные выделенных файлов, и создать полученный файл в другой панели именем файла под курсором (дописывать, если существует) + отображение прогресс бара
joinz=PS<"%p"//1>||"%t"//0//Summa.txt||progres<>||upd<3> ;; склеить все файлы активной панели и создать полученный файл в другой панели именем Summa.txt