Описание команды


zlist

Создание различных списков, преобразование и передача их в другие команды и параметры.
Аналог команды slist

zlist=Analog

Параметры:

AnalogВсе параметры аналогичны команде slist.

Примечания:

Дополнительные символы, которые можно использовать в строке: "@CR" - Символ возврата каретки, Chr(13), "@LF" - Символ перевода строки, Chr(10), "@CRLF" = @CR & @LF, "@TAB" - Символ Tab, Chr(9).

Если в команде(ах) необходимы кавычки, то используются две одинарных кавычки (апострофа) '' , если в команде необходим пробел - используются два символа тильды ~~.

Команда имеет возможность передавать другим командам информацию через именные глобальные переменные. см. Дополнение №23

Имя переменнойОписание
GLOBALZLIST0массив входных данных (список исходных путей объектов)
GLOBALZLISTмассив выходных данных (список преобразованных по заданным условиям путей объектов)
GLOBALZLIST1массив вошедших в список объектов (список путей объектов, которые вошли в список)
GLOBALZLIST2массив не вошедших в список объектов (список путей объектов, которые не вошли в список)
GLOBALZLIST3массив выходных данных (в первой ячейке путь созданного файла при использовании параметра save<>)

См. также:

alist, blist, clist, dlist, elist, flist, glist, hlist, ilist, jlist, klist, llist, mlist, nlist, olist, plist, qlist, rlist, slist, tlist, ulist, vlist, wlist, xlist, ylist

Примеры:
 Как создать кнопку?

alist=[tc=AM]||##path<4> pathu="%P" marlr=%Z%F||0 tcimg=$cm302 anf2d=[tc=CAL*f]||2||([^\t]+)||begin<0> sends=$GLOBALANF2D1??-1?||eline<(!!)> xlist=$GLOBALANF2D0||##path<4> slist=$GLOBALXLIST||$$~~GLOBALSENDS<:NUMBER:>||^^GLOBALXLIST<:NUMBER:>= zlist=$GLOBALALIST||?Q$GLOBALSLIST|#|0|1|0|0|1 GLOBALZLIST<c> pause=500 tcimg=$cm3007|3006|4006 ;; открыть активную панель в неактивной панели в режиме "Подробный" с сохранением выделения, записать в буфер обмена базовые имена (согласно сортировки в активной панели) выделенных файлов + размеры (в скобках), вернуть неактивную панель в исходное состояние.

sends=x??-1||#K10!!@CRLF100x100 aends=x??-1||##rndm<10?10|0:2:-#|gradient:#> zlist=$GLOBALSENDS||^^$f254\Gragient-random-||$$-rndm<3-|2>-:NUMBER:.png start=Magick||-size||list<$GLOBALSENDS>||-define||gradient:angle=45||list2<$GLOBALAENDS>||-colorspace||RGB||-depth||16||+repage||list3<$GLOBALZLIST>||&&hide||&&wait ;; создать в папке temp, 10 двухцветных градиентов 100х100 случайного цвета с диагональю 45

slist=%WL <FOR> 1 <TO> GLOBALSLIST<0> zlist=PS<GLOBALSLIST<:INDEX:>//1//0//nfo> exect=$var_path='GLOBALZLIST<1>'=''''?'GLOBALSLIST<:INDEX:>':'GLOBALZLIST<1>' modfs=PS<GLOBALSLIST<:INDEX:>//1>||0||<mdata=$var_path> <NEXT> ;; для всех файлов каждой выделенной папки изменить дату модификации с условием: если в папке есть файл .nfo, то дата модификации берётся из этого файла, если нет, то из родительской папки

slist=%WL wlist=%WL zlist=%WL alist=$GLOBALSLIST+$GLOBALWLIST+$GLOBALZLIST||^^слепилось))~~ GLOBALALIST<a> GLOBALSLIST<a> GLOBALWLIST<a> GLOBALZLIST<a> ;; пример передачи данных 3-х переменных команде (выделенных объектов активной панели)

slist=%WL zlist=$GLOBALSLIST[2:-1]!!-1 GLOBALZLIST<a> ;; пример передачи заданных ячеек команде zlist (выделенных объектов активной панели)

slist=%WL||##path<0>||save<%%TCIMG_PATH%%\Files\Lists\BeforeRenaming.txt> global slist=PS<"%P"//1//0>||##path<4>||formt<0!!(?i).*[a-zа-яё]!!> xends=GLOBALSLIST<1>||&&\d.*$!! <IF> 1 <> <info=t61$GLOBALXENDS[1]> <THEN> xends=_ <ENDIF> zlist=$GLOBALSLIST||formt<0!!(?m)([\d]+)\D.*> <IF> 1 <> <info=t61$GLOBALZLIST[1]> <THEN> bends=000 zlist=$GLOBALBENDS <ENDIF> xlist=$GLOBALZLIST||formt<11> aends=GLOBALXLIST<1>||#Sfnc_numplus0 iends=<info=t60$GLOBALAENDS[1]> renms=%WL||$$GLOBALXENDS<1>cntr<GLOBALAENDS<1>|1|GLOBALIENDS<1>>||upd<1> creat=%%TCIMG_PATH%%\Files\Lists\||AfterRenaming||content<GLOBALRENMS<t>>||owrite<1> ;; добавить выделенным файлом продолжение счетчика в конец имени (с возможностью отката)

zlist=%WL GLOBALZLIST<a> ;; отобразить в таблице пути выделенных объектов

zlist=[tc=AM]||##<info=o72:://>||?M1:10 folds=[tc=AP]||list<$GLOBALZLIST>||^^Razbor-||$$-rndm<2-|3>||fflag<2>||&#101mpty<1> ;; создать для выделенных объектов именные папки, если список пуст, то папки не создаются

zlist=PS<%P%N//1//0//nfo> exect=$var_path='GLOBALZLIST<1>'=''''?'%P%N':'GLOBALZLIST<1>' modfs=PS<%P%N//1>||0||<mdata=$var_path> ;; для всех файлов папки под курсором изменить дату модификации с условием: если в папке есть файл .nfo, то дата модификации берётся из этого файла, если нет, то из папки под курсором


© Аверин Андрей для Total Commander Image  Averin-And@yandex.ru