Cmd.exe - что означают эти символы в команде ftype?

Просто пытаюсь что-то понять здесь.. При игре с расширениями файлов, введите assoc .bat и получите.bat=batfile, затем ftype batfile и получите "%1" %*. То же самое происходит с ".exe". Принимая во внимание, что когда я запускаю ftype для word.document.12, я получаю путь для WINWORD.EXE.

Мой вопрос: что означают символы "% 1"% *, когда я запускаю ftype batfile? Спасибо!

1 ответ

Решение

Они описаны в справке, доступ к которой осуществляется через ftype /?,

В основном, %1 относится к имени файла, в то время как %* получает каждый аргумент, переданный в файл, который был выполнен. Они в том же формате, что и cmd.exe собственная обработка параметров, используемая в пакетных файлах.

Текст взят из ftype /?:

.................................................  Within an open
command string %0 or %1 are substituted with the file name being
launched through the assocation.  %* gets all the parameters and %2
gets the 1st parameter, %3 the second, etc.  %~n gets all the remaining
parameters starting with the nth parameter, where n may be between 2 and 9,
inclusive.  For example:

    ASSOC .pl=PerlScript
    FTYPE PerlScript=perl.exe %1 %*

would allow you to invoke a Perl script as follows:

    script.pl 1 2 3
Другие вопросы по тегам