Дополнение №22 | |
Параметры получения различных списков.
1. PS<> | Список объектов каталога |
2. FOLDC<> | Список объектов содержимого каталогов |
3. FOLDM<> | Список выделенных объектов и всех объектов в подпапках |
4. LISTC<> | Список объектов из выделенных без дубликатов |
5. LISTF<> | Список заданных объектов |
6. INI<> | Список элементов INI файла |
7. cliplist | Список элементов из буфера обмена |
8. FLST<> | Смешанные списки объектов по заданному списку |
9. [tc] | Списки объектов файловых панелей Total Commander |
10. TCGINFO<> | Списки объектов из шаблона |
Примечание | №1 - Приоритет обработки параметров |
Примечание | №2 - Маска |
Примечание | №3 - Атрибуты |
PS<Path//Flag//Recursion//Mask//Include//Registr//Format//Lines> (рекомендуется), или PS<Path!!Flag!!Recursion!!Mask!!Include!!Registr!!Format!!Lines>, где: Path - путь к каталогу. Остальные параметры являются необязательными. Flag : 0 - получить файлы и папки (по умолчанию). -1 - получить папки и файлы. 1 - только файлы. 2 - только папки. -2 - только папки, включая корневой каталог. -3 - получить файлы и папки, включая корневой каталог. -4 - получить папки и файлы, включая корневой каталог. Recursion|Attributes - см Примечание №3: 0 - без рекурсии - корневой каталог. -1 - с рекурсией: глубина 125 (по умолчанию на всю глубину). N - глубина максимальной вложенности. =N - уровень вложенности (список будет получен только с этого уровня). Mask - см Примечание №2 Include : 0 - найти указанные в маске (по умолчанию). 1 - найти все кроме указанных в маске. Registr : 0 - не учитывать регистр (по умолчанию). 1 - учитывать регистр (для любых символов). Format - пути в возвращаемых данных: 1 - полный путь (по умолчанию). 2 - имена файлов с расширением. 3 - имена файлов без расширения. 4 - полный путь, отсекая начальный заданный каталог Path. Lines - получение определённых строк (путей) из списка, может иметь несколько вариантов: N - номер строки. N1,N2,...NN - список номеров, прописанных через запятую N:M - диапазон строк. (M-N - обратный диапазон) N:M,N1:M1...NN,MM - список номеров диапазонов (прямых и обратных). При отрицательных значениях строки извлекаются относительно последней строки. |
FOLDC<List/cliplist//Mode//Flag//Mask//Include//Registr//Format//Lines> (рекомендуется), или FOLDC<List/cliplist!!Mode!!Flag!!Mask!!Include!!Registr!!Format!!Lines>, где: List - путь\к\списку\каталогов.txt или cliplist - список полных путей каталогов из буфера. Остальные параметры являются необязательными. Mode|Attributes - см Примечание №3: 0 - получить только содержимое папок. 1 - получить и файлы (если вошли в список 0 уровня) 2 - получить и файлы (если вошли в список 0 уровня и применить ту же маску Mask) 3 - получить только файлы из списка 0 уровня и применить ту же маску Mask Flag : 0 - Файлы и папки (по умолчанию только 1-го уровня). 1 - Только файлы. 2 - Только папки. -1 - все файлы на всю глубину. -2 - все папки на всю глубину. -3 - все файлы и папки на всю глубину. Mask - см Примечание №2 Include : 0 - найти указанные в маске (по умолчанию). 1 - найти все кроме указанных в маске. Registr : 0 - не учитывать регистр (по умолчанию). 1 - учитывать регистр (для любых символов). Format - пути в возвращаемых данных: 1 - полный путь (по умолчанию). 2 - имена файлов с расширением. 3 - имена файлов без расширения. Lines - получение определённых строк (путей) из списка, может иметь несколько вариантов: N - номер строки. N1,N2,...NN - список номеров, прописанных через запятую N:M - диапазон строк. (M-N - обратный диапазон) N:M,N1:M1...NN,MM - список номеров диапазонов (прямых и обратных). При отрицательных значениях строки извлекаются относительно последней строки. |
FOLDM<List/cliplist//Flag//Recursion//Mask//Include//Registr//Format//Lines> (рекомендуется), или FOLDM<List/cliplist!!Flag!!Recursion!!Mask!!Include!!Registr!!Format!!Lines>, где: List - путь\к\списку\выделенных\каталогов или cliplist - список полных путей элементов из буфера. Остальные параметры являются необязательными. Flag : 0 - получить файлы и папки, включая пути корневых папок (по умолчанию). 1 - только файлы, включая пути корневых папок. 2 - только папки, включая пути корневых папок. -3 - получить файлы и папки, НЕ включая пути корневых папок. -1 - только файлы, НЕ включая пути корневых папок. -2 - только папки, НЕ включая пути корневых папок. Recursion|Attributes - см Примечание №3: 0 - без рекурсии - корневой каталог. -1 - с рекурсией: глубина 125 (по умолчанию на всю глубину). N - глубина максимальной вложенности. =N - уровень вложенности (список будет получен только с этого уровня). Mask - см Примечание №2 Include : 0 - найти указанные в маске (по умолчанию). 1 - найти все кроме указанных в маске. Registr : 0 - не учитывать регистр (по умолчанию). 1 - учитывать регистр (для любых символов). Format - пути в возвращаемых данных: 1 - полный путь (по умолчанию). 2 - имена файлов с расширением. 3 - имена файлов без расширения. Lines - получение определённых строк (путей) из списка, может иметь несколько вариантов: N - номер строки. N1,N2,...NN - список номеров, прописанных через запятую N:M - диапазон строк. (M-N - обратный диапазон) N:M,N1:M1...NN,MM - список номеров диапазонов (прямых и обратных). При отрицательных значениях строки извлекаются относительно последней строки. |
LISTC<List/cliplist//Flag//Recursion//Mask//Include//Registr//Format//Lines> (рекомендуется), или LISTC<List/cliplist!!Flag!!Recursion!!Mask!!Include!!Registr!!Format!!Lines>, где: List - путь\к\списку\списков или cliplist - список полных путей списков из буфера. Остальные параметры являются необязательными. Flag : 0 - получить файлы и папки (по умолчанию). 1 - только файлы. 2 - только папки. Recursion|Attributes - см Примечание №3: 0 - без рекурсии - корневой каталог. -1 - с рекурсией: глубина 125 (по умолчанию на всю глубину). N - глубина максимальной вложенности. =N - уровень вложенности (список будет получен только с этого уровня). Mask - см Примечание №2 Include : 0 - найти указанные в маске (по умолчанию). 1 - найти все, кроме указанных в маске. Registr : 0 - не учитывать регистр (по умолчанию). 1 - учитывать регистр (для любых символов). Format - пути в возвращаемых данных: 1 - полный путь (по умолчанию). 2 - имена файлов с расширением. 3 - имена файлов без расширения. Lines - получение определённых строк (путей) из списка, может иметь несколько вариантов: N - номер строки. N1,N2,...NN - список номеров, прописанных через запятую N:M - диапазон строк. (M-N - обратный диапазон) N:M,N1:M1...NN,MM - список номеров диапазонов (прямых и обратных). При отрицательных значениях строки извлекаются относительно последней строки. |
LISTF<Path1/Path2/ ... /PathN>, где: Path1 ... PathN - полные пути объектов, разделённые / Так же может использоваться конструкция LISTF<LISTN>, где: LIST1, LIST2 или LISTN означает, что полные пути будут взяты из соответствующих ключей FilesList1, FilesList1 или FilesListN в TCIMG.ini в секции [Setting]. Пути в ключах разделяются / Пример записи: FilesList1=C:\test1.txt/C:\test2.txt/C:\test3.txt |
INI<Flag//PathINI//NameSection//Key> (рекомендуется), или INI<Flag!!PathINI!!NameSection!!Key>, где: Flag : 1 - все имена секций со скобками. 2 - все имена секций без скобок. 3 - содержимое всех секций. 4 - содержимое секции NameSection с именем секции. 5 - содержимое секции NameSection без имени секции. 6 - список ключей секции NameSection. 7 - список значений секции NameSection. 8 - значения ключа Key секции NameSection. 9 - имя ключа Key и его значение секции NameSection (Key=Value). 10 - содержимое всех секций без имён секций. 11 - содержимое всех секций (каждая секция в отдельной ячейке массива для команд sends). 12 - содержимое всех секций без имён секций (каждая секция в отдельной ячейке массива для команд sends). Секции возвращаются относительно заданных имён и очерёдности расположения секций в файле: 13 - содержимое заданных секций. 14 - содержимое заданных секций без имён секций. 15 - содержимое заданных секций (каждая секция в отдельной ячейке массива для команд sends). 16 - содержимое заданных секций без имён секций (каждая секция в отдельной ячейке массива для команд sends). Секции возвращаются относительно очерёдности заданных имён: 17 - содержимое заданных секций. 18 - содержимое заданных секций без имён секций. 19 - содержимое заданных секций (каждая секция в отдельной ячейке массива для команд sends). 20 - содержимое заданных секций без имён секций (каждая секция в отдельной ячейке массива для команд sends). 21 - список заданных ключей и их значения (Key=Value) (каждая пара в отдельной ячейке массива для команд sends). 22 - список значений заданных ключей (Value) (каждое значение в отдельной ячейке массива для команд sends). 23 - содержимое всех секций (построчно). 24, 25, 26, 27 - содержимое всех секций. Flag//PathINI//RegExp//Search//Replace
RegExp - регулярное выражение:
(если строка начинается с ??Key то регулярное выражение берётся TCIMG.ini из секции [FormatUser] из ключа Key): - Flag=24 - секция включается, если нет вхождения. - Flag=26 - секция включается, если нет вхождения (каждая секция в отдельной ячейке массива для команд sends). - Flag=25 - секция включается, если есть вхождение. - Flag=27 - секция включается, если есть вхождение (каждая секция в отдельной ячейке массива для команд sends). Search - [необязательный] - регулярное выражение для поиска во включённой секции. ??Key1,Key2,...KeyN - после ?? можно прописывать один или несколько ключей через запятую из TCIMG.ini из секции [FormatUser] Replace - [необязательный] - шаблон замены. Секции возвращаются относительно заданного номера или нумерации (расположения секций в файле): 28 - имена секций со скобками. 29 - имена секций без скобок. 30 - содержимое секций. 31 - содержимое секций без имён секций. 32 - содержимое секций (каждая секция в отдельной ячейке массива для команд sends). 33 - содержимое секций без имён секций (каждая секция в отдельной ячейке массива для команд sends). PathINI - путь к INI файлу. NameSection - имя секции, используется при Flag=4 и выше, см. Примечания. Key - имя ключа, используется при Flag=8, Flag=9, см. Примечания.
Flag имеет необязательные дополнительные параметры Flag|Comm|Mode, где: Comm - режим удаления комментариев: 0 - не удалять комментарии (по умолчанию). 1 - удаление всех комментариев вида ; комментарий 2 - удаление комментариев в начале строки вида ; комментарий 3 - удаление специальных комментариев в начале строки вида /*@комментарий - для кода html@*/ Mode - режим удаления пустых строк: 0 - не удалять пустые строки (по умолчанию). 1 - удалять пустые строки. |
Без подпараметров |
FLST<PathList>, где: PathList - путь к списку со строками, позволяющие найти нужные элементы. возможные варианты строк: • PS<Path//...> - список объектов каталога. • FOLDC<List//...> - список объектов содержимого каталогов. • FOLDM<List//...> - список заданных объектов и всех объектов в подпапках. • LISTC<List//...> - список объектов из заданных без дубликатов. • LISTF<Path1/...> - список заданных объектов. • INI<Flag//...> - список элементов INI файла. • cliplist - список элементов из буфера обмена. • [tc] - списки объектов файловых панелей Total Commander. • TCGINFO<> - списки объектов из шаблона. • @Path - если строка начинается с "@", то путь объекта добавляется как есть. • в файле списка могут использоваться комментарии в начале строки "пробел;;пробел - комментарий". Пример записи в файле списка:
;; комментарий slist=FLST<$f212\OrfoList.txt> GLOBALSLIST<a> |
Примечания: Примечание №1. Приоритет обработки параметров. С версии 7.5 параметры PS<>, FOLDC<>, FOLDM<>, LISTC<>, LISTF<>, INI<>, [tc], TCGINFO<> в команды подключаются вместе и имеют приоритет обработки: 1) INI<> 2) [tc] см. Дополнение №12 3) TCGINFO<> см. Дополнение №31 4) LISTF<> 5) PS<> 6) FOLDC<> 7) FOLDM<> 8) LISTC<> 9) cliplist Это позволяет первые параметры обрабатывать внутри последующих: Пример записи:
lists=FOLDC<LISTF<%P%N\11\/%P%N\22\/%P%N\33\>//1//-4>||##path<32> Пример записи: copys=FOLDC<PS<%P%N//2//0>//1//1>||%P%N//0||##<info=f61::> Сначала обрабатывается параметр PS<...>, который создаёт начальный список и передаёт его параметру FOLDC<>- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Примечание №2. Маска. Маска может быть либо полная с использованием символов "*" и "?", либо с указанием расширения файлов. В качестве разделителя используется символ "|". По умолчанию "*" - найти все файлы. Для поиска файлов без расширения используется маска ":zeroext:" Пример: *.ini|*.txt Маска шаблонов. см. Дополнение №18: Пример: [extnd=Arhive] В версии 10.8 появилась возможность вводить "прямую" маску без преобразования для имени объекта. Для этого перед маской необходимо прописать && , при этом подпараметр Include=0 Пример: &&.+\.(?:(?:woff|eof|tff)(?:\d+)?) Пример: &&(?:.+\.exe|[^\.]+) пример получения файлов exe и файлов без расширенияПример: &&(?:.+\.(?:exe|au3|html?)|[^\.]+) пример получения файлов заданных типов и файлов без расширенияВ версии 25.4 появилась возможность вводить "прямую" маску без преобразования для пути объекта. Для этого перед маской необходимо прописать ## , при этом подпараметр Include=0 Пример: ##(?:.*TCIMG_)([^.\\]*)(?:\.lng) Пример: ##(.*\\(?:[^\\]+\.exe|[^\\.]+)) пример получения файлов exe и файлов без расширенияПример: ##(.*\\(?:[^\\]+\.(?:exe|au3|html?)|[^\\.]+)) пример получения файлов заданных типов и файлов без расширения(*UCP) и (?i) вставляются автоматически (относительно подпараметра Registr), в начале регулярного выражения они не прописываются. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Примечание №3. Атрибуты. String - строка из букв задаваемых атрибутов - RASHNOTC: "R" = READONLY (только для чтения) "A" = ARCHIVE (архивный) "S" = SYSTEM (системный) "H" = HIDDEN (скрытый) "N" = NORMAL (нормальный) "O" = OFFLINE (оффлайн) "T" = TEMPORARY (временный) "C" = COMPRESSED (сжатый, имеется в виду сжатие NTFS, а не ZIP) String может иметь вид: "SH", "^SH" "SH" - найти системные и скрытые объекты. "^SH" - найти объекты кроме системных и скрытых. Пример записи:
; в текущем каталоге найти все файлы без рекурсии, кроме системных и скрытых - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
© Аверин Андрей для Total Commander Image Averin-And@yandex.ru |