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


creat

Создание файлов.

creat=Path,%P, %p,%T, %t||@List||Name.Ext||line<>||list<>||LISTF<>||PS<>||FOLDC<>||FOLDM<>||LISTC<>, ||SeriesParam, ||noext<>, ||Dialogs, ||clpget, ||date<>, ||code<>, ||clip<>, ||autocode<>, ||bkt<>, ||first<>, ||temp<>, ||open<>, ||jump<>, ||upd<>, ||attr<>, ||modfs<>, ||[tc], ||sdel<>, ||swap<>, ||rndm<>, ||numb<>, ||<info>, ||<text>или[text], ||<tezt>или[tezt], ||owrite<>, ||content<>, ||plusn<>, ||binfile<>, ||cntlr<>, ||empty<>, ||formt<>

Параметры:

1-й обязательный параметр. Может иметь несколько вариантов:
Path,
%P, %p,
%T, %t
Путь. Path - путь назначения, где создаются файлы. см. Дополнение №7. (c:\Test\)
owrite<>Перезапись. Параметр owrite<Number>, где Number:
 Описание
  0 - не перезаписывать существующий файл, добавляется счётчик.
  1 - перезаписывать, если файл существует.
  8 - пропустить при совпадении имени объекта.
  10 - если файл существует - перезаписывать; пропускать, если подобный файл не существует по целевому пути.
  11 - если файл существует - добавлять счётчик; пропускать, если подобный файл не существует по целевому пути.
  12 - если файл существует, то к целевому файлу добавляется счётчик.
  13|Ext - если файл существует, то к целевому файлу добавляется заданное расширение Ext.
  14|Name - если файл существует, то целевой файл перемещается в заданную/создаваемую папку Name по целевому пути.
  15|StringName - если файл существует, то к имени целевого файла добавляется заданная приставка; тег :N: в StringName заменяется именем файла.

Режимы 50 - 59 сравнивают файлы по датам.
Numbers - номер или номера через запятую 0, 1, 2
    0 - время последней модификации.
    1 - время создания.
    2 - время последнего доступа.
    Если проверяются несколько дат, то для определения "нового" файла можно в конце указать "-1", будет означает, что если все даты файла новее другого, то он считается "новым" 0,1,2,-1. По умолчанию, если хотя бы одна дата новее, то он считается "новым"

  50|Numbers - если дата исходного файла новее, то целевой файл заменяется. Иначе пропускается.
  51|Numbers - если дата исходного файла старше, то целевой файл заменяется. Иначе пропускается.
  52|Numbers - если дата исходного файла новее, то к создаваемому файлу прибавляется счётчик. Иначе пропускается.
  53|Numbers - если дата исходного файла старше, то к создаваемому файлу прибавляется счётчик. Иначе пропускается.
  54|Numbers - если дата исходного файла новее, то к целевому файлу прибавляется счётчик. Иначе пропускается.
  55|Numbers - если дата исходного файла старше, то к целевому файлу прибавляется счётчик. Иначе пропускается.
  56|Numbers|Ext - если дата исходного файла новее, то к целевому файлу прибавляется заданное расширение. Иначе пропускается.
  57|Numbers|Ext - если дата исходного файла старше, то к целевому файлу прибавляется заданное расширение. Иначе пропускается.
  58|Numbers|Name - если дата исходного файла новее, то целевой файл перемещается в заданную/создаваемую папку Name по целевому пути. Иначе пропускается.
  59|Numbers|Name - если дата исходного файла старше, то целевой файл перемещается в заданную/создаваемую папку Name по целевому пути. Иначе пропускается.
  60|Numbers|StringName - если дата исходного файла новее, то к имени целевого файла добавляется заданная приставка; тег :N: в StringName заменяется именем файла. Иначе пропускается.
  61|Numbers|StringName - если дата исходного файла старше, то к имени целевого файла добавляется заданная приставка; тег :N: в StringName заменяется именем файла.. Иначе пропускается.

Режимы 20 и 21 работают не для всех команд, где подключён параметр owrite<>
Режимы работают для команд связанных с текстовыми преобразованиями.
  20|Delimeter - если файл существует, то записывать в конец файла через разделитель Delimeter (необязательный)
  21|Delimeter - если файл существует, то записывать в начало файла через разделитель Delimeter (необязательный)
Далее при существовании файла проверяются контрольные суммы 2-х файлов:

  2|x - если они не совпадают, то к создаваемому файлу прибавляется счётчик.
          если они совпадают, то файл пропускается.

  3|x - если они не совпадают, то к создаваемому файлу прибавляется счётчик.
          если они совпадают, то файл перезаписывается.

  4|x - если они не совпадают, то существующий файл перезаписывается.
          если они совпадают, то файл пропускается.

  5|x - если они не совпадают, то существующий файл перезаписывается.
          если они совпадают, то к создаваемому файлу прибавляется счётчик.

  6|x - если они не совпадают, то файл пропускается.
          если они совпадают, то существующий файл перезаписывается.

  7|x - если они не совпадают, то файл пропускается.
          если они совпадают, то к создаваемому файлу прибавляется счётчик.

  30|x - если они не совпадают, то к целевому файлу прибавляется счётчик.

  31|x|Ext - если они не совпадают, то к целевому файлу прибавляется заданное расширение Ext.
          если они совпадают, то файл пропускается.

  32|x|Name - если они не совпадают, то целевой файл перемещается в заданную/создаваемую папку Name по целевому пути.
          если они совпадают, то файл пропускается.

  33|x|StringName - если они не совпадают, то к имени целевого файла добавляется заданная приставка; тег :N: в StringName заменяется именем файла.
          если они совпадают, то файл пропускается.

  х - метод сравнения:
    1 - подсчёт контрольной суммы MD5
    2 - подсчёт контрольной суммы SHA1
    3 - подсчёт контрольной суммы CRC32
    4 - подсчёт контрольной суммы MD2
    5 - подсчёт контрольной суммы MD4
    6 - подсчёт контрольной суммы SHA256
    7 - подсчёт контрольной суммы SHA384
    8 - подсчёт контрольной суммы SHA512
    9 - подсчёт контрольной суммы MAC
content<>Строка. Параметр content<String>, где String - строка, которая берётся за основу создания файла. Возможны варианты:
  • String - строка
  • @Path - путь объекта (символ @ отбрасывается)
  • cliptext - текст из буфера обмена
  • File - полный путь к файлу, берётся его содержимое
  • GLOBALNAME<xN> - информация из глобальных переменных см. Дополнение №23
Дополнительные символы, которые можно использовать в строке: "@CR" - Символ возврата каретки, Chr(13), "@LF" - Символ перевода строки, Chr(10), "@CRLF" = @CR & @LF, "@TAB" - Символ Tab, Chr(9)
plusn<>Изменение нумерации. Параметр plusn<Number> позволяет уменьшить или увеличить нумерацию у имени объекта (если в конце базового имени есть число), где Number - число на которое изменяется текущее (при отрицательном значении - уменьшение)
binfile<>Создание бинарного файла.
cntlr<>Счётчик. При совпадении имён:
  0 - счётчик слева
  1 - счётчик справа (по умолчанию)
empty<>Пустой файл. Параметр empty<Number>, где Number:
  0 - создавать файл, если содержимое пусто (по умолчанию)
  1 - не создавать файл, если содержимое пусто
formt<>Преобразование текстовой информации. см. Дополнение №15.

Примечания:

При создании файлов с расширением "doc" происходит создание файла через -DLL библиотеки Word. Требуется установленный MS Word.

Там, где необходимо указывать путь можно использовать сокращения для специальных папок и файлов $f01 ... см. Дополнение №8.

В команде включена проверка длины имени объекта относительно длины полного пути. Максимальная длина полного пути 255 знаков для файлов и 250 для папок. Длинные имена обрезаются. Дополнительная настройка в TCIMG.ini в секции [Setting] в ключах MaxLenPath и DeleteEndSymbols

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

Имя переменнойОписание
GLOBALCREAT0массив входных данных (список начальных имён, из которых будут созданы файлы)
GLOBALCREATмассив выходных данных (список путей созданных файлов)

См. также:

copys, copyy, delsm, delss, emptt, empty, filep, filer, folds, movee, moves, renmm, renms, scand

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

%Zfocusp shape=1 creat="%t"||[combo=BOX2].[combo=BOX3]||clip<>||jump<3> pause=500 tcimg=$cm906 keybd=0~~{ENTER} pause=500 focusp arhvup ;; находясь в архиве добавить в него файл с содержимым буфера обмена, имя файла и расширение выбираются в диалоговом окне.


shape=1 creat=$f06||[combo=BOX2].[combo=BOX3]||clip<> ;; создать в активной панели файл с содержимым буфера обмена, имя файла и расширение выбираются в общем диалоге

shape=3||1 creat=$f06||[combo=BOX2].[combo=BOX3] ;; создать на рабочем столе файл, имя файла и расширение выбираются в общем диалоге


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