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 

Single Post  Topic: Создание информационных файлов 
Author Message
MVV



PostPosted: Sun Dec 21, 2014 01:39    Post subject: Reply with quote

Вообще, :do_file - это просто метка, но да, переход на неё выполняется в виде вызова процедуры. Ей передаются 3 параметра: путь к исходному файлу, путь к папке .descr и относительный путь к папке файла относительно корня диска. %~2 - путь к папке .descr без кавычек (модификатор ~), %~nx1 - имя и расширение без кавычек (модификатор ~nx) исходного файла, %~a1 - атрибуты (все возможные модификаторы можно посмотреть в консоли по команде call /?). Знак > означает вывод в новый файл, знак >> - дозапись в файл. При этом ^> просто печатает символ >. Путь к файлу предварительно помещается в переменную окружения и строится из пути к папке .descr, относительного пути к текущей папке, имени и расширения текущего файла и добавочного расширения .txt.

Для обработки каталога определена метка :do_dir, принимает три параметра: путь к корню диска, путь к папке .descr и относительный путь к текущей папке относительно базовых. Процедура сначала вызывает себя для вложенных папок (при этом к относительному пути добавляется имя очередной папки, которое извлекается модификатором ~nx, как и в :do_file), затем для каждого файла в папке вызывает :do_file. В команде for можно выбрать любую букву для подстановки пути к очередному элементу, я взял %F для файлов и %D для папок. Символ процента в команде for надо удваивать, если она пишется в батнике, а не напрямую в консоли.

Ну а в начале файла просто вызывается :do_dir для исходной папки с пустым относительным путём.Вообще, :do_file - это просто метка, но да, переход на неё выполняется в виде вызова процедуры. Ей передаются 3 параметра: путь к исходному файлу, путь к папке .descr и относительный путь к папке файла относительно папки диска. %~2 - путь к папке .descr без кавычек (модификатор ~), %~nx1 - имя и расширение без кавычек (модификатор ~nx) исходного файла, %~a1 - атрибуты (все возможные модификаторы можно посмотреть в консоли по команде call /?). Знак [i]
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
View user's profile Send private message ICQ Number


Powered by phpBB © 2001, 2005 phpBB Group